home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / ss / qubecalc.zip / MANUAL < prev    next >
Text File  |  1989-03-18  |  152KB  |  4,665 lines

  1.  
  2.  
  3.  
  4.                             QubeCalc
  5.  
  6.                           User's Manual
  7.  
  8.                 (C) Copyright FormalSoft 1986-87
  9.                        All Rights Reserved
  10.  
  11.  
  12.  
  13.     This manual  is copyrighted  and may  not be reproduced in
  14.     any manner or form without the  express written permission
  15.     of:
  16.  
  17.                            FormalSoft
  18.                           P.O. Box 1913
  19.                      Sandy, Utah 84091-1913
  20.                          (801) 565-0971
  21.  
  22.  
  23.  
  24.  
  25.  
  26.                            DISCLAIMER
  27.  
  28.     This software will perform as described when used properly.
  29.     By using this software you acknowledge  that this software
  30.     may not suit your particular needs or be completely trouble
  31.     free.  If this software does not perform as described, our
  32.     liability to  you is  limited to replacing the software or
  33.     refunding the purchase price (if registered).
  34.  
  35.     In no event will  FormalSoft  be  liable  to  you  for any
  36.     damages, including any lost profits, lost savings or other
  37.     incidental or consequential damages arising out of the use
  38.     of or  inability to use these programs, even if FormalSoft
  39.     has been advised of the possibility of such damages.
  40.  
  41.  
  42.  
  43.     ATTENTION VERSION 1 AND 2 USERS
  44.  
  45.     In order to provide all of the additional features in this
  46.     new  release,  QubeCalc  version  3  uses a different file
  47.     structure than versions 1 and 2.  If you try to directly read
  48.     version 1  or 2  files into  version 3 you will receive an
  49.     "Invalid File" error.  Your old version 1 and 2 files must be
  50.     converted  over  to  the  new  format  using  the  program
  51.     CONVERT.COM.
  52.  
  53.     You run the convert program in the following manner:
  54.  
  55.     A> CONVERT oldfile newfile
  56.  
  57.     where oldfile is the name of the version 1 or 2 file (without
  58.     the .QUB  extension) and  newfile is  the name you want to
  59.     give the version 3 file (without the .QUB extension).
  60.  
  61.     For example, if you have  a  version  1  or  2  file named
  62.     TAXES.QUB which  you want  to convert to version 3 format,
  63.     then typing:
  64.  
  65.     CONVERT taxes taxes3
  66.  
  67.     will create a version 3 file called taxes3.  If you give the
  68.     same  file  name  for  both  oldfile and newfile, then the
  69.     version 3 file will overwrite the version 1 or 2 file.
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.      2
  88.  
  89.  
  90.     RESTRICTED PERMISSION TO COPY
  91.  
  92.     QubeCalc is NOT a  public  domain  program.    QubeCalc is
  93.     copyrighted by FormalSoft, and FormalSoft retains all rights
  94.     pertaining to QubeCalc.   FormalSoft  grants  a restricted
  95.     permission  to  users  to  make  and  distribute copies of
  96.     QubeCalc.
  97.  
  98.     If you continue to regularly use QubeCalc, you are expected
  99.     to register with FormalSoft using the form provided below.
  100.  
  101.     If QubeCalc is used for business purposes, or for gain, then
  102.     a copy of QubeCalc must be purchased for  each computer it
  103.     is to be used on.
  104.  
  105.     Private  individuals   and  computer   clubs  are  granted
  106.     permission to copy and distribute QubeCalc for evaluation by
  107.     others on the following conditions:
  108.  
  109.     -  You may  NOT sell,  rent or lease the disks for profit.
  110.     Doing so is a violation of FormalSoft's copyright.
  111.  
  112.     -  You may  NOT charge  anything for  QubeCalc (except for
  113.     authorized user  groups, which may charge a cost based fee
  114.     (not to exceed $10) to cover disks and handling.
  115.  
  116.     -  You may  NOT  copy  the  printed  documentation  in any
  117.     manner or form.
  118.  
  119.     -  You may NOT bundle QubeCalc with any other product.
  120.  
  121.     -  You may  NOT distribute versions of QubeCalc which have
  122.     been modified in any way.
  123.  
  124.     -  You must include ALL of the files which are distributed
  125.     with QubeCalc.   These  files must be ARCHIVED together if
  126.     you place them on an electronic bulletin board.
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.                                                             3
  135.  
  136.  
  137.                    QubeCalc Registration Form
  138.                    --------------------------
  139.     QubeCalc is distributed  as  ShareWare  and  is completely
  140.     supported by user registrations.  You may register your copy
  141.     of QubeCalc by filling out the  form below  and mailing it
  142.     along with $74.95 ($69.95 + $5 s/h) to:
  143.  
  144.                            FormalSoft
  145.                       Product Registration
  146.                           P.O. Box 1913
  147.                       Sandy, Ut. 84091-1913
  148.  
  149.     We can also accept VISA/MC at (801) 565-0971.
  150.  
  151.     You  will  receive  the  latest  version  of QubeCalc, the
  152.     complete printed manual, and will be placed on  our update
  153.     list to receive automatic notification of QubeCalc updates
  154.     and new software releases from FormalSoft.
  155.  
  156.     Name:___________________________________________
  157.  
  158.     Address:________________________________________
  159.  
  160.     City, State, Zip:_______________________________
  161.  
  162.     Number of copies:____  Amount enclosed * :______
  163.  
  164.     * UT residents add 6 1/4% sales tax
  165.  
  166.     Where did  you find  out about  QubeCalc or  get your copy
  167.     from?
  168.  
  169.     ________________________________________________
  170.  
  171.     FormalSoft is  currently working  on new  features to make
  172.     QubeCalc even more powerful.   If  there are  any features
  173.     you would  like to  see added  to QubeCalc,  please let us
  174.     know.
  175.  
  176.     ________________________________________________
  177.  
  178.     ________________________________________________
  179.  
  180.  
  181.      4
  182.  
  183.  
  184.     WHAT CAN I DO WITH QUBECALC?
  185.  
  186.     Welcome to the world of  QubeCalc.    QubeCalc  is  a TRUE
  187.     three  dimensional  spreadsheet  (as  opposed  to some two
  188.     dimensional spreadsheets which let you link cells of multiple
  189.     spreadsheets together).  It gives you the ability to look at
  190.     your data in more ways than you ever imagined possible.
  191.  
  192.     You can enter data into the QubeCalc WorkQube  just as you
  193.     would  with  any  other  spreadsheet.  You could treat the
  194.     WorkQube as if it were 64 separate spreadsheets  which are
  195.     linked together, but it is much more flexible than just that.
  196.  
  197.     Regular spreadsheets  allow you to enter data in a row and
  198.     column format.  For example, you might have  a spreadsheet
  199.     which  displays  the  number  of sales listed by month and
  200.     salesman as shown below:
  201.  
  202.                          1983
  203.                Jan 83    Feb 83    Mar 83    Apr 83
  204.     Bill         12        13        14        13
  205.     Sam          11        15        12        11
  206.     Joe          10        10        13        11
  207.     Harry        12        15        13        12
  208.  
  209.  
  210.     With regular  spreadsheets  you  would  need  to  create a
  211.     separate sheet for each year's data... and consolidating these
  212.     spreadsheets into a total overview spreadsheet would require
  213.     major rehashing or re-entering of the spreadsheet data.
  214.  
  215.     With QubeCalc  you can enter each year's data into its own
  216.     page in the WorkQube (1983 in one page,  1984 in  the next
  217.     page, and so on)... and one of the WorkQube's pages can be
  218.     easily used to link each year's  data together  as a total
  219.     overview spreadsheet.
  220.  
  221.     But the real power of QubeCalc is its ability to rotate the
  222.     WorkQube to allow you  to  look  at  your  data  from many
  223.     different perspectives.  The perspective can be changed so 
  224.  
  225.     that what  were once  pages are now columns, and your data
  226.     is now  displayed as  the number  of sales  during a given
  227.  
  228.                                                             5
  229.  
  230.  
  231.     month each year as shown below:
  232.  
  233.                Feb 82    Feb 83    Feb 84    Feb 85
  234.     Bill         10        13        12        11
  235.     Sam          11        15        10        12
  236.     Joe          12        10        14        10
  237.     Harry        12        15        13        12
  238.  
  239.     And successive  pages now list sales in March, then April,
  240.     then May, and so on.
  241.  
  242.     Try doing that with a regular spreadsheet!!!!
  243.  
  244.     QubeCalc is extremely powerful, yet it is easy to learn and
  245.     use.  It provides many functions and features found only in
  246.     very expensive spreadsheet programs,  as well  as features
  247.     which can't be found elsewhere at any price!!
  248.      
  249.     - You can  turn rows into columns, columns into pages, and
  250.     so on, allowing you to look at your data in any perspective
  251.     you desire.
  252.  
  253.     - You can  import and  export Lotus 1-2-3, dBASE II, dBASE
  254.     III, and DIF files.
  255.  
  256.     - Interactive context sensitive help screens make learning
  257.     and using QubeCalc a snap.
  258.  
  259.     - A full assortment of predefined functions is provided for
  260.     you to use in  your computations  (Math, Trig, Statistics,
  261.     Finance, Date, Time, Logical, Special, and Text catagories).
  262.  
  263.     - You can link to a block of cells in another spreadsheet.
  264.  
  265.     - You can sort your data by rows or columns.
  266.  
  267.     - You can create graphs from your data.
  268.  
  269.     - You can lock title rows and columns on the screen.
  270.  
  271.     - A powerful  Macro capability  allows you  to create your
  272.     own little "programs" within a spreadsheet.
  273.  
  274.  
  275.      6
  276.  
  277.  
  278.     - You can confine the automatic recalculation to any block
  279.     of  cells.    This  can  really speed things up in a large
  280.     spreadsheet.
  281.  
  282.     - And much, much more!!!
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.                                                             7
  323.  
  324.  
  325.     GETTING STARTED
  326.  
  327.     SYSTEM REQUIREMENTS
  328.  
  329.     QubeCalc is designed to run on  an  IBM  PC,  PC/XT,  or a
  330.     true  IBM  compatible  running  MS-DOS  or PC-DOS (version
  331.     2.0 or higher).  QubeCalc requires at least 256K of RAM to
  332.     run, and the full 640K can be accessed if it is available (the
  333.     more memory, the bigger the spreadsheets you can have).
  334.  
  335.     If you  want  to  take  advantage  of  QubeCalc's graphics
  336.     capabilities, you must have an IBM color graphics adapter or
  337.     equivalent.
  338.  
  339.     QubeCalc uses an overlay structure.   This means  that the
  340.     QubeCalc program  actually consists  of 3 different files;
  341.     QUBECALC.COM, QUBECALC.000, and QUBECALC.001.
  342.  
  343.     QUBECALC.COM   is   the   main   part   of   the  program.
  344.     QUBECALC.000  and  QUBECALC.001  are  overlay  files which
  345.     contain various features and functions of  QubeCalc.  When
  346.     QubeCalc needs to access one of these features or functions,
  347.     it reads the code for that feature in from QUBECALC.000 or
  348.     QUBECALC.001.      The   advantage  of  using  an  overlay
  349.     structure is that the program uses up less memory, thereby
  350.     freeing up more RAM to put your spreadsheets in.
  351.  
  352.     If   you   place   the  overlay  files  (QUBECALC.000  and
  353.     QUBECALC.001)  on  a  hard  disk  or  in  a  RAM  disk  in
  354.     extended  memory,  you  should  not notice any significant
  355.     delay when these features are accessed.  If the overlay files
  356.     are on  a floppy  disk, you  may notice a small delay when
  357.     accessing these features.  If you have a floppy based system
  358.     and cannot  tolerate the  short delays,  you may place the
  359.     overlay files in a RAM disk.
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.      8
  370.  
  371.  
  372.  
  373.     QubeCalc needs to know where you place the  overlay files.
  374.     By default, QubeCalc assumes that the overlay files are in
  375.     the directory where you start up  QubeCalc.   If you place
  376.     the overlay files in a RAM disk or in a directory other than
  377.     where you start the program, then  you must  run the setup
  378.     program to create a configuration file which tells QubeCalc
  379.     where you put the overlays.
  380.  
  381.     The setup program can also be used to  tell QubeCalc where
  382.     you placed  the help  file and which directory you want to
  383.     use as the startup data directory.  It  will also  let you
  384.     customize the screen colors which QubeCalc uses.
  385.  
  386.  
  387.  
  388.  
  389.     MAKING A BACKUP
  390.  
  391.     The first thing you should do is make a backup copy of all
  392.     the files on the QubeCalc disk.  Put this backup away in a
  393.     safe place in case you waste your working copy.  The files
  394.     which you should find on your disk are:
  395.  
  396.       QUBECALC.COM  - The QubeCalc program.
  397.       QUBECALC.000  - An overlay (part of the program).
  398.       QUBECALC.001  - An overlay (part of the program).
  399.       REGISTER.DOC  - License and registration form.
  400.       QUBECALC.HLP  - The HELP file.
  401.       CONVERT.COM   - Converts version 1 and 2 files.
  402.       GET123.COM    - A program to import 1-2-3 files.
  403.       IMPORT.COM    - Imports DIF and dBASE files.
  404.       EXPORT.COM    - Exports DIF, dBASE, and Lotus files.
  405.       QUBECALC.DOC  - The on disk documentation.
  406.       PRINTDOC.BAT  - Prints the on disk documentation.
  407.       HARDDISK.BAT  - Installs QubeCalc on a hard disk.
  408.       SETUP.COM     - The setup program.
  409.       EXAMPLE.QUB   - An example data file.
  410.       README        - New features, etc.
  411.  
  412.  
  413.  
  414.  
  415.  
  416.                                                             9
  417.  
  418.  
  419.  
  420.     FLOPPY DISK BASED SYSTEM
  421.  
  422.     Place the QubeCalc disk  into the  current drive  and type
  423.     QUBECALC  at  the  DOS  prompt.    If  you  do not put the
  424.     overlay  files  (QUBECALC.000  and  QUBECALC.001)  into  a
  425.     RAM disk,  or if you wish to make use of the Help facility
  426.     (and don't put the help file  into a  RAM disk),  you must
  427.     leave the QubeCalc disk in the drive (because that is where
  428.     the help and overlay files will be located).
  429.  
  430.  
  431.  
  432.  
  433.     HARD DISK BASED SYSTEM
  434.  
  435.     Change to the A: drive.  Then place the QubeCalc disk into
  436.     the A:  drive and type HARDDISK.  This program will create
  437.     a directory named  \QUBECALC  on  the  C:  drive  and will
  438.     copy all  of the files from the QubeCalc disk into the new
  439.     directory.  QubeCalc can then be run by  first changing to
  440.     the  \QUBECALC   directory  and  typing  QUBECALC  at  the
  441.     DOS prompt.
  442.  
  443.     The best setup  is  to  leave  all  of  the  files  in the
  444.     \QUBECALC directory,  and always start up from within that
  445.     directory.  That way, QubeCalc will always know  where all
  446.     of it's system files are (overlays, help, etc.).
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.      10
  464.  
  465.  
  466.     HOW TO RUN QUBECALC
  467.  
  468.     QubeCalc may  be run  by simply  changing to the \QUBECALC
  469.     directory and typing:
  470.  
  471.     QUBECALC 
  472.  
  473.     followed by a carriage return.
  474.  
  475.     QubeCalc also provides a shortcut for  the first  file you
  476.     want to  load.   If you want to start up with a particular
  477.     file, you may supply the file name on the command line and
  478.     that file  will be  loaded when the program comes up.  For
  479.     example, if you want to use  a file  named TAXES.QUB, then
  480.     type the following when you first run QubeCalc:
  481.  
  482.     QUBECALC TAXES
  483.  
  484.     You may  provide a  full pathname  for the file, otherwise
  485.     QubeCalc will look for  the  file  in  either  the current
  486.     directory, or  in the startup data directory you specified
  487.     using the SETUP.COM program.
  488.  
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.                                                            11
  511.  
  512.  
  513.     THE SETUP PROGRAM
  514.  
  515.     A setup program is included to let you customize QubeCalc.
  516.     This  setup  program  (named  SETUP.COM) allows you to set
  517.     several  parameters  and  then   creates   a   file  named
  518.     QUBECALC.CFG.    When  you  run  QubeCalc it looks for the
  519.     QUBECALC.CFG file  in the  same directory  as the QubeCalc
  520.     program.  If this file is not found or doesn't exist (because
  521.     you haven't run  SETUP.COM)  then  QubeCalc  will  use its
  522.     own preset values.  This program is run by changing to the
  523.     QUBECALC directory and typing SETUP at the DOS prompt.
  524.  
  525.     You may choose your own favorite  colors for  the QubeCalc
  526.     screen (if  you have  a color monitor).  The F1 through F6
  527.     function keys  allow  you  to  select  the  foreground and
  528.     background colors  for the  various parts  of the QubeCalc
  529.     display.  The F7 function key allows you to select the color
  530.     you wish  to use  when creating  a graph.  Pressing any of
  531.     these keys simply  changes  the  appropriate  part  of the
  532.     display to the next available color.
  533.  
  534.     You can  also set a startup data drive and directory which
  535.     QubeCalc will use as the location for data files when it is
  536.     first run.  Pressing the F8 function key will place you into
  537.     edit mode so that you  may  enter  a  drive  and directory
  538.     name.   Once your  changes have been made, just hit return
  539.     to exit from edit mode.
  540.  
  541.     If you want QubeCalc to use your default  directory as the
  542.     startup  data  directory,  then  simply  leave the startup
  543.     directory name blank.
  544.  
  545.     The F9 and F10  function keys  allow you  to specify which
  546.     directories QubeCalc should look in to find its overlay and
  547.     help files.  For example, if you placed the overlay files into
  548.     a RAM  disk named  D:, then you would need to press the F9
  549.     key and enter D: as the overlay directory.
  550.  
  551.     If you don't specify  an overlay  or help  directory, then
  552.     QubeCalc will  use the directory you started QubeCalc from
  553.     as the overlay and help directory.
  554.  
  555.  
  556.  
  557.      12
  558.  
  559.  
  560.  
  561.     Once you are happy with the  colors you  have selected and
  562.     the startup directory, just hit Alt-S (hold down the Alt key
  563.     and press S) to create  the  QUBECALC.CFG  file.    If you
  564.     decide  you  would  rather  not  create a new QUBECALC.CFG
  565.     file, then the ESC key will exit without creating the file.
  566.  
  567.     If you don't like your new colors or startup data directory
  568.     after  all,  you  can  either run SETUP.COM again, or just
  569.     delete QUBECALC.CFG and let QubeCalc use its defaults.
  570.  
  571.  
  572.     NOTE
  573.  
  574.     An increasing number of users are using systems which have
  575.     a  color  card  but  a  monochrome monitor.  QubeCalc will
  576.     work with  such a  system, but  the setup  program must be
  577.     run first.
  578.  
  579.     QubeCalc detects  whether a  color card  is present.  If a
  580.     color card is detected, QubeCalc will use its  color mode.
  581.     The colors used for the cell pointer and axes, however, do
  582.     not map to inverse video on a monochrome monitor.
  583.  
  584.     Here is the procedure to take care of this situation:
  585.  
  586.     1.  Run SETUP as described above.
  587.     2.  Set the colors to be:
  588.  
  589.      - WorkQube          White on Black
  590.      - Cell and Axes     Black on Light Gray
  591.      - Block             Black on Light Gray
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.                                                            13
  605.  
  606.  
  607.     WHERE TO GO FOR HELP
  608.  
  609.     If you find yourself in need of help while using QubeCalc it
  610.     is only a keystroke away.  QubeCalc provides what is known
  611.     as interactive context-sensitive HELP screens. Interactive
  612.     means that  you can  easily switch from one HELP screen to
  613.     another.  Context sensitive means that QubeCalc is keeping
  614.     track of  what you  are doing  so that  it can provide the
  615.     proper HELP screen when you ask for it.
  616.  
  617.     In order to call up a HELP screen all you need to do is hit
  618.     the [F1]  HELP key.  QubeCalc will pop up a HELP screen to
  619.     assist with whatever you are currently doing.  If the HELP
  620.     screen provides  the information you need, then you simply
  621.     hit the ESC key to return to what you were doing.
  622.  
  623.     The HELP screen will also list several other  HELP screens
  624.     which are  related to  what you are doing.  You may select
  625.     one of these HELP screens by  simply using  the arrow keys
  626.     on the cursor pad to move the highlight bar to the name of
  627.     the HELP screen desired, and then hit the Return key.
  628.  
  629.     The HELP screen  named  <HELP  INDEX>  is  a  special HELP
  630.     screen which  provides an  index of the major HELP screens
  631.     available.
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.      14
  652.  
  653.  
  654.     THE DISPLAY
  655.  
  656.     The QubeCalc screen looks  much  like  the  screen  of any
  657.     other spreadsheet.
  658.  
  659.     It consists of cells laid out in rows and columns.  At the
  660.     top of each column in  the  WorkQube  is  a  letter  (or 2
  661.     letters) of the alphabet.  This letter (or letters) provides a
  662.     means of telling columns apart.  The first  26 columns are
  663.     labeled with  the letters A through Z.  Since there are 64
  664.     columns but only 26 letters, the remaining columns must use
  665.     2 letters to identify them.
  666.  
  667.     To the left of each row in the WorkQube is a number to let
  668.     you know which rows you are  looking at.   The  top row in
  669.     the WorkQube is row 1 and the bottom is row 64.
  670.  
  671.     The area  where a  row and  a column  cross is  known as a
  672.     "cell".  Each cell in the WorkQube is identified by the letter
  673.     (or letters) of the column it is in, the number of the row it
  674.     is in, and the number of the page it is in.   For example,
  675.     the cell  that is  in column  BX and  row 29  on page 4 is
  676.     named BX29;4  (the column  letters always  come before the
  677.     row  number,  and  the  page  number  is  separated  by  a
  678.     semicolon).  Each one of the cells may contain some text, a
  679.     number, or a formula.
  680.  
  681.     The QubeCalc  screen also provides information such as the
  682.     number of bytes available for data, the current directory for
  683.     data files, the name of the current file (if any), the current
  684.     block for recalculation, and a cell status line.  The cell
  685.     status line  is located  in the top lefthand corner of the
  686.     screen and looks something like this:
  687.  
  688.     [C]B4;5: NUMBER (9)
  689.  
  690.     Each  component  of  the  above  line  tells  you  certain
  691.     information about the current perspective and cell.  The [C]
  692.     tells you that you are currently viewing perspective C (see
  693.     the next section for more information on perspectives).  The
  694.     B4;5 tells you that the cell  you are  currently at  is in
  695.     column B, row 4, and page 5.
  696.  
  697.  
  698.                                                            15
  699.  
  700.  
  701.  
  702.     The next  item "NUMBER"  tells you what type of item is in
  703.     the current cell (this item  can  be  either  BLANK, TEXT,
  704.     NUMBER,  FORMULA,  or  ERROR).   And finally, the value in
  705.     the parentheses (9) tells you what the width of the current
  706.     cell is set to.
  707.  
  708.     The next  to bottom line on the display is an index to the
  709.     function keys  (F1  through  F10)  so  you  don't  have to
  710.     memorize or look them up all the time.
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.  
  734.  
  735.  
  736.  
  737.  
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.      16
  746.  
  747.  
  748.     THE WORKQUBE
  749.  
  750.     The QubeCalc  spreadsheet (known  as the  WorkQube) may be
  751.     most easily thought of as a large cube  containing 262,144
  752.     cells.  These cells are arranged into 64 rows, 64 columns,
  753.     and 64 pages.  Each one of the cells may contain some text,
  754.     a number, or a formula.
  755.  
  756.  
  757.                                             
  758.                     PAGE 64             
  759.                                            
  760.                        FACE C                
  761.               PAGE 3       
  762.                                         B 
  763.           PAGE 2 
  764.                                       E 
  765.         A   B   C   D   E   F ..     C 
  766.       1                             A 
  767.       2                            F 
  768.       3        PAGE 1             
  769.       4        FACE A                   
  770.       5                                 
  771.       6                                 
  772.       :                                  
  773.                                   
  774.      
  775.  
  776.     There are six (6) different faces on the WorkQube (just like
  777.     on a toy block), which are  named A,  B, C,  D, E,  and F.
  778.     Faces  A,  B,  and  C  are  shown above.  Face D is on the
  779.     opposite side of the block from Face A, Face E is opposite
  780.     Face B, and Face F is opposite Face C.
  781.  
  782.     QubeCalc provides  a familiar spreadsheet window into each
  783.     of these 6 faces, which  allows  you  to  view,  enter, or
  784.     otherwise manipulate  your data from any of the 6 faces of
  785.     the WorkQube.  This provides 6 different perspectives of the
  786.     data stored within the WorkQube.
  787.  
  788.  
  789.  
  790.  
  791.  
  792.                                                            17
  793.  
  794.  
  795.     The  easiest  way  to  see  the  power  of  QubeCalc is by
  796.     example.
  797.  
  798.     1. Start up QubeCalc by typing:  QUBECALC EXAMPLE
  799.  
  800.     This will  run  QubeCalc  and  automatically  load  the 3D
  801.     spreadsheet  named  EXAMPLE.QUB.    This  file  contains a
  802.     small 3D  spreadsheet.   This small  spreadsheet lists the
  803.     amount of  money spent  in several budgets during January,
  804.     April, July, and October.  Each page of the 3D spreadsheet
  805.     provides this data for a different year.  Play with the PgUp
  806.     and PgDn keys to change pages and see this data.
  807.  
  808.     2. Now, move the cell pointer to cell D7;3 (this is cell D7
  809.     on page 3).  This is the value spent on rent for April 1983.
  810.  
  811.     3. We  will now  use the  /WorkQube Perspective command to
  812.     let us see how this value compares with April rents in other
  813.     years.  Since these values are now in different pages, and
  814.     we want them to be in adjacent columns, we want  to rotate
  815.     the WorkQube  so that we are looking at our data from Face
  816.     B.  Change to Perspective B by pressing  the slash  key /,
  817.     then W  (for WorkQube), then P (for Perspective), and then
  818.     B (to change to Face B).  You will instantly  see the Rent
  819.     paid in April of 83, 84, 85, 86, and the total April payments.
  820.  
  821.     4. You  may have  noticed that  a cell's name changes from
  822.     face to face... for example: cell D7;3 in Face A is cell C7;4
  823.     in Face B.  This is simply because you are looking at your
  824.     data from a different perpective (or angle), and  what are
  825.     columns in  one face might be pages in another face... and
  826.     cell names change so  that every  face provides "lettered"
  827.     columns and  "numbered" rows and pages.  Don't worry about
  828.     cell references... they also change from face to face, so that
  829.     references always  point to  the same  data, regardless of
  830.     which face they're in.
  831.  
  832.     5. You may want to play around and look at  this data from
  833.     all  6   perspectives  (some   perspectives  provide  more
  834.     information than others).
  835.  
  836.  
  837.  
  838.  
  839.      18
  840.  
  841.  
  842.  
  843.     MOVING AROUND IN THE WORKQUBE
  844.  
  845.     QubeCalc allows you to move to any of the 262,144 cells in
  846.     the WorkQube.   You  go to  a new cell by moving the "cell
  847.     pointer".  The cell  pointer is  a highlighted  bar on the
  848.     screen which "points to" the cell in the WorkQube which is
  849.     the current cell.
  850.  
  851.     QubeCalc provides several ways of moving  the cell pointer
  852.     around in  the WorkQube.   Any  of these methods of moving
  853.     can be used anytime you need to move  the cell  pointer to
  854.     another  location,  including  when  you are defining a 3D
  855.     block of cells.
  856.  
  857.     The Arrow keys on the cursor pad can  be used  to move the
  858.     cell pointer up, down, left, or right one cell position.  If
  859.     you try to move the cell  pointer beyond  the edge  of the
  860.     screen, the  screen will  scroll to the next row or column
  861.     (assuming there is a row or column to scroll to).
  862.  
  863.     The PgUp key moves the cell pointer up to the  next higher
  864.     page number.   The  cell pointer will be moved to the cell
  865.     with the  same row  coordinate and  column coordinate (but
  866.     the  next  higher  page  coordinate) as the cell you moved
  867.     from.
  868.  
  869.     The PgDn key moves  the  cell  pointer  down  to  the next
  870.     lower page  number.  The cell pointer will be moved to the
  871.     cell with  the same  row coordinate  and column coordinate
  872.     (but the next lower page coordinate) as the cell you moved
  873.     from.
  874.  
  875.     The Home key moves the cell pointer to the top left corner
  876.     of the current page (the first row and the first column).
  877.  
  878.     The  End  key  moves  the  cell pointer to the lower right
  879.     corner of the current page  (the  last  row  and  the last
  880.     column).
  881.  
  882.  
  883.  
  884.  
  885.  
  886.                                                            19
  887.  
  888.  
  889.  
  890.     The  Ctrl  Right  Arrow  and  Ctrl Left Arrow keys let you
  891.     move one screen's worth of columns  to the  right or left.
  892.     These  key  sequences  are  generated  by holding down the
  893.     control key (Ctrl) and pressing either  the left  or right
  894.     arrow.
  895.  
  896.     The Ctrl  PgUp and  Ctrl PgDn keys let you move up or down
  897.     one screen's worth  of  rows.    These  key  sequences are
  898.     generated  by  holding  down  the  control  key (Ctrl) and
  899.     pressing either the PgUp or PgDn key.
  900.  
  901.  
  902.     QubeCalc also provides two additional functions to help you
  903.     move to  another cell.   These  two functions are the GOTO
  904.     and the FIND functions.
  905.  
  906.     When you press the [F5] GOTO  function key,  QubeCalc asks
  907.     you which  cell you  want to  go to.  You just type in the
  908.     cell name and hit return... and off you go!  For example, if
  909.     you  want  to  go  to  cell AC53, then simply hit the [F5]
  910.     GOTO key, type "AC53" (without  the  quotes)  and  hit the
  911.     return key.   If  the address is a valid one then the cell
  912.     pointer will be repositioned to the new cell location.  The
  913.     current face and all other settings will remain unchanged.
  914.  
  915.     The  [F6]   FIND  function  can  be  used  to  search  the
  916.     WorkQube for a match of a  string which  you enter.   When
  917.     you hit the [F6] FIND key QubeCalc will display this menu:
  918.  
  919.     Repeat  Contents  Display
  920.  
  921.     If you  select Contents then QubeCalc will ask you to type
  922.     in what you want to  search  for,  and  will  compare your
  923.     string with the contents of each cell (the formula, or the
  924.     number in the cell, etc.).
  925.  
  926.     If you select Display then QubeCalc will ask you to type in
  927.     what you  want to search for, and will compare your string
  928.     with each cell's display (the formatted display of the cell
  929.     value).
  930.  
  931.  
  932.  
  933.      20
  934.  
  935.  
  936.  
  937.     If you  select Repeat  then the most recent string will be
  938.     searched for again.  Notice that this is the first item in the
  939.     menu.   This is  so that you may perform repeated searches
  940.     by simply typing [F6] and the return key.
  941.  
  942.     QubeCalc will find any cell which contains the  string you
  943.     ask for, even if it is buried within a longer string.  For
  944.     example, if you ask to find cells which contain "he", then
  945.     QubeCalc will find cells containing "the", "hello", etc.  The
  946.     search is also case sensitive (in other words "He" does NOT
  947.     match "he").
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.                                                            21
  981.  
  982.  
  983.     ENTERING DATA INTO THE WORKQUBE
  984.  
  985.     Each cell  in the  WorkQube may hold either a number, some
  986.     text, or a formula.  You may enter any of these items into
  987.     a cell by simply typing what you want on the command line.
  988.     You may enter up to 70 characters worth of data  into each
  989.     cell.  The data will be entered into the cell when you hit
  990.     the return key or one of the movement  keys on  the cursor
  991.     pad (arrows,  PgUp and  PgDn).  If you finish entering the
  992.     data using the return  key, the  cell pointer  will remain
  993.     positioned at the same cell.  If you finish entering the data
  994.     using one of the movement keys,  the data  will be entered
  995.     into the current cell, and then the cell pointer will move to
  996.     another cell in the direction you specified.
  997.  
  998.  
  999.     NUMBERS
  1000.  
  1001.     A number  can be  entered into  a QubeCalc  cell by simply
  1002.     typing in  the number.  The number which you enter will be
  1003.     placed in the cell which is currently highlighted by the cell
  1004.     pointer.
  1005.  
  1006.     A number  can be  anything in  the range  from -1.0E+37 to
  1007.     +1.0E+37, and  can have  up to  11 significant  places.  A
  1008.     number may  be entered  in either  standard notation (i.e.
  1009.     12.345) or in scientific notation (i.e. 1234.5e-2).
  1010.  
  1011.  
  1012.  
  1013.     TEXT
  1014.  
  1015.     Text strings may be entered into a QubeCalc cell by simply
  1016.     typing in  the string.   The  text which you enter will be
  1017.     placed in the cell which is currently highlighted by the cell
  1018.     pointer.   If the  text contains  more characters than the
  1019.     column is wide, it will spill over into adjacent cells (if the
  1020.     adjacent cells  are blank).  If the adjacent cells contain
  1021.     data, then the extra characters in the text string will be
  1022.     hidden from view (but they will still be in the cell).
  1023.  
  1024.  
  1025.  
  1026.  
  1027.      22
  1028.  
  1029.  
  1030.  
  1031.     There are  four (4)  special characters  which may begin a
  1032.     text string and which affect the way the text is displayed.
  1033.     These characters are:
  1034.  
  1035.       ' causes the text to be left justified in the cell
  1036.       " causes the text to be right justified in the cell
  1037.       ^ causes the text to be centered in the cell
  1038.       \ causes the next character to be repeated
  1039.  
  1040.     If  text  is  entered  without  one  of  the above special
  1041.     characters as the first  character, the  global (WorkQube)
  1042.     justification character is placed on the text automatically.
  1043.     When QubeCalc first starts up the WorkQube justification is
  1044.     set as left ' justified.  You can change this by selecting
  1045.     /WorkQube Justify and making a new choice.
  1046.  
  1047.     Once the text has been entered into a cell, you may change
  1048.     the justification using either the /Cell Justify or the /Block
  1049.     Justify commands (or use the  [F2]  EDIT  function  key to
  1050.     enter edit mode and just change the justification character
  1051.     to the one you want).
  1052.  
  1053.  
  1054.  
  1055.     FORMULAS
  1056.  
  1057.     A QubeCalc cell may contain a formula which is made  up of
  1058.     numbers (or  text in  some cases), references to values in
  1059.     other cells, predefined functions, and mathematical, logical,
  1060.     and comparison operators.  The formula which you enter will
  1061.     be placed in the cell which is currently highlighted by the
  1062.     cell pointer.
  1063.  
  1064.     A formula  must begin with an equal sign '=' and may be as
  1065.     complex as desired.  For example...
  1066.  
  1067.        =-2*@SIN(@IF(C2;3,@PI,@PI/2))/(@AVG($D14;2..F15;4))
  1068.  
  1069.     The items beginning with an @ symbol in  the example above
  1070.     (@SIN, @IF,  etc.) are just a few of QubeCalc's predefined
  1071.     functions.  These functions  are described  in the section
  1072.     titled PREDEFINED FUNCTIONS.
  1073.  
  1074.                                                            23
  1075.  
  1076.  
  1077.  
  1078.     The  following  operators  are  available  to be used in a
  1079.     formula (a  and  b  can  be  any  number,  cell reference,
  1080.     function, or formula):
  1081.  
  1082.     MATHEMATICAL
  1083.     a+b Addition
  1084.     a-b Subtraction
  1085.     a*b Multiplication
  1086.     a/b Division
  1087.     a^b Exponentiation
  1088.  
  1089.     LOGICAL
  1090.     a&b And (is true only if a is true AND b is true)
  1091.     a|b Or  (is true is a is true OR b is true)
  1092.      ~b Not (is false if b is true, and is true if b is false)
  1093.  
  1094.     COMPARISON
  1095.     a =b is true if a is equal to b
  1096.     a<>b is true if a is NOT equal to b
  1097.     a <b is true if a is less than b
  1098.     a >b is true if a is greater than b
  1099.     a<=b is true if a is less than or equal to b
  1100.     a>=b is true is a is greater than or equal to b
  1101.  
  1102.     In addition,  the +  operator can be used to concatenate 2
  1103.     strings.  For example:
  1104.  
  1105.     "This is" + " a test"  returns "This is a test"
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.      24
  1122.  
  1123.  
  1124.     Operations using these operators  will  follow  the normal
  1125.     order of  precedence (order  of precedence means the order
  1126.     that operations are performed).  The order of precedence is:
  1127.  
  1128.     1. Exponentiation [ ^ ]
  1129.     2. Negation [ - ]
  1130.     3. Multiplication and Division [ *, / ]
  1131.     4. Addition and Subtraction [ +, - ]
  1132.     5. Comparison [ =, <, >, <=, >=, <> ]
  1133.     6. Not [ ~ ]
  1134.     7. And/Or [ &, | ]
  1135.  
  1136.     where exponentiation is performed  before negation  and so
  1137.     on.   If you  wish to change the order in which operations
  1138.     are  performed,  then  you  may  use  parentheses  in your
  1139.     formulas.  Operations which you place in parentheses will be
  1140.     performed before those outside the parentheses.
  1141.  
  1142.     EXAMPLE:
  1143.  
  1144.     =2+3*4 evaluates as 14 (not 20) because the multiply has a
  1145.     higher  precedence  than  the  addition.   If you want the
  1146.     addition to be performed first, then use parentheses to make
  1147.     the equation look like =(2+3)*4.
  1148.  
  1149.     If you enter a formula which QubeCalc considers invalid and
  1150.     cannot evaluate, the formula you entered will be displayed
  1151.     on  the  command  line  and  the  editing facility will be
  1152.     invoked.  The cursor will be placed near  the part  of the
  1153.     formula which  QubeCalc didn't  like, and  you may fix the
  1154.     formula using the editing commands described in the section
  1155.     titled EDITING THE CONTENTS OF A CELL.
  1156.  
  1157.     The [F3]  BLOCK key  allows you  to define a cell or block
  1158.     reference to be placed in a formula (or any other  type of
  1159.     line for that matter) when you are entering data.  This can
  1160.     often  simplify  the  chore  of  entering  cell  or  block
  1161.     references.   The [F4]  ABS key,  when used in conjunction
  1162.     with the  [F3]  BLOCK  key,  toggles  the  cell  and block
  1163.     references  between  absolute  and  relative.    For  more
  1164.     information on these  functions  see  the  sections titled
  1165.     DEFINING   A    BLOCK   OF    CELLS   and   ABSOLUTE   AND
  1166.     RELATIVE REFERENCES.
  1167.  
  1168.                                                            25
  1169.  
  1170.  
  1171.  
  1172.     SPECIAL NOTE:  When entering cell  references (i.e. B3;4),
  1173.     you  may  ignore  typing  in  the  page  number  (and  the
  1174.     semicolon) if the reference is to a cell on the same page as
  1175.     the formula.   If  you leave the page number off, QubeCalc
  1176.     will automatically add  the  current  page  number  to the
  1177.     reference when the formula is entered into the cell.
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.  
  1196.  
  1197.  
  1198.  
  1199.  
  1200.  
  1201.  
  1202.  
  1203.  
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.      26
  1216.  
  1217.  
  1218.     THE COMMAND MENUS
  1219.  
  1220.     QubeCalc  provides   many  powerful   commands  which  are
  1221.     available through the Command Menus.  You may  call up the
  1222.     Command Menus  by pressing  the slash  "/" key.  This will
  1223.     provide a list of  Menu  options  across  the  top  of the
  1224.     WorkQube.   The first  menu that  pops up when you hit the
  1225.     slash key looks like this:
  1226.  
  1227.     Cell Block WorkQube Insert Delete Print Graph File Quit
  1228.  
  1229.     The word Cell will be in a highlighted  bar.   This bar is
  1230.     known  as  the  Menu  Bar.    Items  from  the Menu may be
  1231.     selected in one of two ways.  The  first way  is to simply
  1232.     type the  first letter  of the  Menu option  desired.  The
  1233.     second way is to use the arrow keys  to move  the Menu Bar
  1234.     to the  desired Menu item and then press the return key to
  1235.     select the item.
  1236.  
  1237.     For example, if you  wanted to  perform an  operation on a
  1238.     file, you could start in one of 2 ways:
  1239.  
  1240.     1.   Hit the / key (which pops up the Main Menu), and then
  1241.     type the letter "f" (for "File").
  1242.  
  1243.                              or
  1244.  
  1245.     2.  Hit the / key, then hit the right arrow 7 times (or the
  1246.     left arrow  2 times)  to move  the Menu  Bar on top of the
  1247.     word "File", and then hit the return key.
  1248.  
  1249.     Either of these methods will pop up a new menu (the "File"
  1250.     menu).  Items from all future menus may be also be selected
  1251.     by typing the first letter or using the arrow keys.
  1252.  
  1253.     If you ever get into a Menu that you don't want to  be in,
  1254.     just hit the escape key (ESC) to get out.
  1255.  
  1256.     The  /Cell  command  provides  options  dealing  with  the
  1257.     contents of a single cell.   For more  information on this
  1258.     command  and  its  options  see  the  section  titled CELL
  1259.     COMMANDS.
  1260.  
  1261.  
  1262.                                                            27
  1263.  
  1264.  
  1265.  
  1266.     The /Block selection  provides  options  dealing  with the
  1267.     contents of  a block  of cells which you define.  For more
  1268.     information on this command and its options see the section
  1269.     titled BLOCK COMMANDS.
  1270.  
  1271.     The /WorkQube  selection provides options dealing with the
  1272.     contents of all the cells in the QubeCalc  workspace.  For
  1273.     more information  on this  command and its options see the
  1274.     section titled WORKQUBE COMMANDS.
  1275.  
  1276.     The /Insert  command provides  the capability  to insert a
  1277.     blank row, column, or page of cells into the WorkQube.  For
  1278.     more information on this command and  its options  see the
  1279.     section titled INSERTING A ROW, COLUMN, OR PAGE.
  1280.  
  1281.     The /Delete  command provides  the capability  to delete a
  1282.     row, column, or page of  cells  from  the  WorkQube.   For
  1283.     more information  on this  command and its options see the
  1284.     section titled DELETING A ROW, COLUMN, OR PAGE.
  1285.  
  1286.     The /Print command provides the capability  and options to
  1287.     print  defined  blocks  of  cells  on a printer.  For more
  1288.     information on this command and its options see the section
  1289.     titled PRINTING YOUR DATA.
  1290.  
  1291.     The /Graph  command provides the capability and options to
  1292.     create  graphs  from  data  within  QubeCalc.    For  more
  1293.     information on this command and its options see the section
  1294.     titled GRAPHING YOUR DATA.
  1295.  
  1296.     The /File command provides the capability to save and load
  1297.     all  or  part  of  the  cells  to/from  a  file.  For more
  1298.     information on this command and its options see the section
  1299.     titled SAVING AND LOADING DATA FILES.
  1300.  
  1301.     The  /Quit  command  exits  QubeCalc.  The WorkQube is not
  1302.     automatically saved... remember to  save first!   For more
  1303.     information on this command and its options see the section
  1304.     titled EXITING FROM QUBECALC.
  1305.  
  1306.  
  1307.  
  1308.  
  1309.      28
  1310.  
  1311.  
  1312.     SPECIAL FUNCTION KEYS
  1313.  
  1314.     QubeCalc provides several special functions which have been
  1315.     assigned to  the 10  function keys  F1, F2, .. F10.  These
  1316.     special functions are listed below, along with the name of
  1317.     the section  in this  manual which  provides more detailed
  1318.     information about the function.
  1319.  
  1320.     [F1] HELP  Calls up a context sensitive HELP screen.
  1321.                See: WHERE TO GO FOR HELP
  1322.  
  1323.     [F2] EDIT  Allows you to edit the contents of a cell.
  1324.                See: EDITING THE CONTENTS OF A CELL
  1325.  
  1326.     [F3] BLOCK Allows you to point when editing.
  1327.                See: DEFINING A BLOCK OF CELLS
  1328.  
  1329.     [F4] ABS   Toggles between absolute/relative.
  1330.                See: DEFINING A BLOCK OF CELLS
  1331.  
  1332.     [F5] GOTO  Allows you to go to a designated cell.
  1333.                See: MOVING AROUND IN THE WORKQUBE
  1334.  
  1335.     [F6] FIND  Searches for a string in the WorkQube.
  1336.                See: MOVING AROUND IN THE WORKQUBE
  1337.  
  1338.     [F7] STAT  Displays the status of the WorkQube.
  1339.  
  1340.     [F8] MACRO Allows you to define/undefine user macros.
  1341.                See: DEFINING AND USING MACROS
  1342.  
  1343.     [F9] CALC  Performs a recalculation of the WorkQube.
  1344.                See: WORKQUBE COMMANDS (AUTOCALC)
  1345.  
  1346.     [F10] GRAPHDisplays the current graph.
  1347.                See: GRAPHING YOUR DATA
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.                                                            29
  1357.  
  1358.  
  1359.     PREDEFINED FUNCTIONS
  1360.  
  1361.     QubeCalc  provides   a  large   assortment  of  predefined
  1362.     functions which  may be used in formulas.  These functions
  1363.     generally  fall  into   eight   catagories;  Mathematical,
  1364.     Trigonometry, Statistical,  Logical, Financial, Date/Time,
  1365.     Special, and Text.
  1366.  
  1367.     Most of these functions require one or more arguments.  An
  1368.     argument is a value which the function uses as an input to
  1369.     provide an output value.  An argument may  be a  number, a
  1370.     text string,  a reference  to a  value in another cell, or
  1371.     another formula  (in the case of the statistical functions, an
  1372.     argument may also be a range or block of cells).
  1373.  
  1374.     The function  will return either a numerical or text value
  1375.     and may be treated exactly like a number or text would be.
  1376.     Functions  may  be  nested  as  deeply  as  desired  (just
  1377.     remember that there is  a  70  character  per  cell limit,
  1378.     though).    The  function  names  must begin with an @ and
  1379.     must be CAPITALIZED.  If you  provide an  illegal argument
  1380.     to a function it will return ERROR as the value.
  1381.  
  1382.  
  1383.     MATHEMATICAL FUNCTIONS
  1384.  
  1385.     @ABS(X) returns the absolute value of X.
  1386.      @ABS(3.4) = 3.4
  1387.      @ABS(-2.6) = 2.6
  1388.  
  1389.     @EXP(X) returns  e to the X power (e = 2.7).  The value of
  1390.     the argument must be  less than  85.2 or  an overflow will
  1391.     occur  and  the  @EXP  function  will  return ERROR as the
  1392.     value.
  1393.      @EXP(3) = 20.0855
  1394.      @EXP(-3) = 0.0498
  1395.      @EXP(90) = ERROR
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402.  
  1403.      30
  1404.  
  1405.  
  1406.  
  1407.     @LN(X) returns the natural  log of  X.   The value  of the
  1408.     argument must  be greater  than 0 or the @LN function will
  1409.     return ERROR as the value.
  1410.      @LN(1000) = 6.9078
  1411.      @LN(0) = ERROR
  1412.      @LN(-1) = ERROR
  1413.  
  1414.     @LOG(X) returns the log base 10  of X.   The  value of the
  1415.     argument must  be greater than 0 or the @LOG function will
  1416.     return ERROR as the value.
  1417.      @LOG(1000) = 3
  1418.      @LOG(0) = ERROR
  1419.      @LOG(-1) = ERROR
  1420.  
  1421.     @INT(X) returns  the integer  part of  X (the  part of the
  1422.     argument which is in front of the decimal point).  The sign
  1423.     of the value returned is the same as that of the argument.
  1424.      @INT(2.34) = 2
  1425.      @INT(-2.34) = -2
  1426.  
  1427.     @FRAC(X) returns the fractional part of X (the part of the
  1428.     argument which is after the decimal point).  The sign of the
  1429.     value returned is the same as that of the argument.
  1430.      @FRAC(1.23) = .23
  1431.      @FRAC(-1.23) = .23
  1432.  
  1433.     @MOD(X,Y) returns X modulo  Y  (the  remainder  when  X is
  1434.     divided by Y).  Since dividing by 0 is illegal, Y can not be
  1435.     equal to 0.
  1436.      @MOD(5,2) = 1
  1437.      @MOD(5.2,2.2) = 0.8
  1438.      @MOD(5,0) = ERROR
  1439.  
  1440.     @RAND returns a random number  which  is  greater  than or
  1441.     equal to  zero and  is less  than one.  The value of @RAND
  1442.     will change to a new random value every  time the WorkQube
  1443.     is recalculated.   Notice  that @RAND  does not require an
  1444.     argument or parentheses.
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.                                                            31
  1451.  
  1452.  
  1453.  
  1454.     @ROUND(X,Y) returns X rounded to Y decimal places.
  1455.      @ROUND(123.456,-2) = 100
  1456.      @ROUND(123.456,-1) = 120
  1457.      @ROUND(123.456,0) = 123
  1458.      @ROUND(123.456,1) = 123.5
  1459.      @ROUND(123.456,2) = 123.46
  1460.  
  1461.     @SQRT(X) returns  the square  root of  X.   The argument X
  1462.     must be either zero or a positive number.  If the argument
  1463.     is negative then @SQRT will return the ERROR value.
  1464.      @SQRT(16) = 4
  1465.      @SQRT(-2) = ERROR
  1466.  
  1467.     @FACT(X)  returns  X  factorial.    The  argument  must be
  1468.     between 0 and 30 (including 0 and 30).  If the argument is
  1469.     not an integer value then the @FACT function  will use the
  1470.     value of the argument rounded to the nearest integer.
  1471.      @FACT(5) = 120
  1472.      @FACT(4.3) = 24
  1473.      @FACT(4.7) = 120
  1474.      @FACT(45) = ERROR
  1475.  
  1476.     @SGN(X)  returns  the  sign  of  X.  If X is negative then
  1477.     @SGN returns -1.  If X is positive then @SGN returns 1.  If
  1478.     X is zero then @SGN returns 0.
  1479.      @SGN(23.4) = 1
  1480.      @SGN(-13.9) = -1
  1481.      @SGN(0) = 0
  1482.  
  1483.     @CELL returns the value of the cell pointed to by the cell
  1484.     pointer.  This function is provided mainly to be used with
  1485.     the /Macro  If command  as a way for a macro to obtain the
  1486.     value of the current cell.  When the @CELL function is used
  1487.     in a  formula in  the WorkQube,  its value is updated only
  1488.     when a recalculation  takes  place  (just  like  any other
  1489.     function).  It is NOT updated every time the cell pointer is
  1490.     moved.
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.      32
  1498.  
  1499.  
  1500.     TRIGONOMETRY FUNCTIONS
  1501.  
  1502.     @PI returns the value of Pi (3.14159...).  Notice that the @PI
  1503.     function does not require an argument or parentheses.
  1504.  
  1505.     @COS(X) returns the Cosine of X.
  1506.      @COS(3) = -0.9900
  1507.      @COS(@PI) = -1
  1508.  
  1509.     @SIN(X) returns the Sine of X.
  1510.      @SIN(3) = 0.1411
  1511.      @SIN(@PI) = 0
  1512.  
  1513.     @TAN(X) returns the Tangent of X.
  1514.      @TAN(3) = -0.1425
  1515.      @TAN(@PI/2) = ERROR
  1516.  
  1517.     @ACOS(X)  returns  the  Arc  Cosine  of X (the angle whose
  1518.     cosine is X).  The value of X must be in the range -1 to 1
  1519.     or the @ACOS function will return ERROR as its value.
  1520.      @ACOS(-0.9900) = 3
  1521.      @ACOS(2) = ERROR
  1522.  
  1523.     @ASIN(X) returns  the Arc  Sine of X (the angle whose sine
  1524.     is X).  The value of X must be in the range -1 to 1 or the
  1525.     @ASIN function will return ERROR as its value.
  1526.      @ASIN(0.1411) = 3
  1527.      @ASIN(2) = ERROR
  1528.  
  1529.     @ATAN(X)  returns  the  Arc  Tangent of X (the angle whose
  1530.     tangent is X).
  1531.      @ATAN(1) = .7854
  1532.  
  1533.  
  1534.  
  1535.  
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.  
  1544.                                                            33
  1545.  
  1546.  
  1547.     STATISTICAL FUNCTIONS
  1548.  
  1549.     QubeCalc provides  seven statistical  functions which will
  1550.     calculate and return various statistics of a list of values.
  1551.     The list may consist of numbers,  references to  values in
  1552.     other cells, formulas, or a range or block of cells.  Blocks
  1553.     of cells are defined by using the cell names of two opposite
  1554.     corners of the block separated by two periods (for example:
  1555.     C14;2..D16;3.  Each individual  item in  the list  must be
  1556.     separated by a comma.
  1557.  
  1558.     EXAMPLE:
  1559.  
  1560.           1.23
  1561.         + the value in the cell A1;1
  1562.         + 2*3.14159...
  1563.         + the sum of the values in each cell in the block
  1564.             defined by the cells C14;2 and D16;3
  1565.                                             
  1566.         =@SUM(1.23, A1;1, 2*@PI, C14;2..D16;3)
  1567.  
  1568.  
  1569.     If  a  cell  reference  which  is used as an argument to a
  1570.     statistical function is blank it will be treated as having a
  1571.     value of  zero.  Any BLANK cells in a BLOCK, however, will
  1572.     be ignored by the statistical functions.
  1573.  
  1574.     Any cells which contain TEXT will not be  ignored and will
  1575.     be treated as having a value of zero.
  1576.  
  1577.     @AVG(list) returns the average of all the items in the list.
  1578.     If the list contains only a block of all BLANK  cells then
  1579.     @AVG will  return ERROR  as its value (because blank cells
  1580.     in a block are ignored and you can't take an average of no
  1581.     values).
  1582.      @AVG(0,1,2,3,4,5,6,7,8,9) = 4.5
  1583.  
  1584.     @COUNT(list) returns  the number  of items in the list.  A
  1585.     number or formula is counted as 1 item, a cell reference is
  1586.     counted as  one item (even if it is BLANK), and a block is
  1587.     counted as the number of non-BLANK cells in the block.
  1588.      @COUNT(0,1,2,3,4,5,6,7,8,9) = 10
  1589.  
  1590.  
  1591.      34
  1592.  
  1593.  
  1594.  
  1595.     @MAXI(list) returns the maximum value in the list.  If the
  1596.     list contains  only a  block of all BLANK cells then @MAXI
  1597.     will return ERROR as its value  (because blank  cells in a
  1598.     block  are  ignored  and  you  can't  find a maximum of no
  1599.     values).
  1600.      @MAXI(0,1,2,3,4,5,6,7,8,9) = 9
  1601.  
  1602.     @MINI(list) returns the minimum value in the list.  If the
  1603.     list contains  only a  block of all BLANK cells then @MINI
  1604.     will return ERROR as its value  (because blank  cells in a
  1605.     block  are  ignored  and  you  can't  find a minimum of no
  1606.     values).
  1607.      @MINI(0,1,2,3,4,5,6,7,8,9) = 0
  1608.  
  1609.     @STD(list) returns the standard deviation of all the items in
  1610.     the list.   If the list contains only a block of all BLANK
  1611.     cells then @STD will  return ERROR  as its  value (because
  1612.     blank cells in a block are ignored and you can't calculate a
  1613.     standard deviation of no values).
  1614.      @STD(0,1,2,3,4,5,6,7,8,9) = 2.87
  1615.  
  1616.     @SUM(list) returns the sum of all the items in the list.
  1617.      @SUM(0,1,2,3,4,5,6,7,8,9) = 45
  1618.  
  1619.     @VAR(list) returns the variance of all the items in the list.
  1620.     If the  list contains only a block of all BLANK cells then
  1621.     @VAR will return ERROR as its  value (because  blank cells
  1622.     in a block are ignored and you can't calculate a variance of
  1623.     no values).
  1624.      @VAR(0,1,2,3,4,5,6,7,8,9) = 8.25
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.                                                            35
  1639.  
  1640.  
  1641.     FINANCIAL FUNCTIONS
  1642.  
  1643.     QubeCalc provides 4 financial functions.  In these functions
  1644.     the number  of periods  must be  greater than zero and the
  1645.     interest rate must be greater than or equal to -1  (if the
  1646.     interest rate  is 10%,  the value of the Interest argument
  1647.     should be 0.1 ).
  1648.  
  1649.     In the functions where an Interest argument is required, the
  1650.     Interest rate is per Period.  For example, if your periods
  1651.     are in months,  then  your  interest  rate  should  be the
  1652.     interest rate per month (not per year).
  1653.  
  1654.     @FV(Payment, Interest, Periods) returns the future value of
  1655.     an annuity where Payment  dollars are  invested per period
  1656.     for  the  number  of  Periods  at  the given percentage of
  1657.     Interest.
  1658.      @FV(100,0.01,36) = 4307.69
  1659.  
  1660.     @PV(Payment, Interest, Periods) returns the present value of
  1661.     an annuity  where Payment  dollars are received per period
  1662.     for the number  of  Periods  at  the  given  percentage of
  1663.     Interest.
  1664.      @PV(100,0.01,36) = 3010.75
  1665.  
  1666.     @PMT(Principal, Interest, Periods) returns the payment per
  1667.     Period due for borrowing Principal dollars for the number of
  1668.     Periods at the given percentage of Interest.
  1669.      @PMT(5000,0.01,36) = 166.07
  1670.  
  1671.     @CGR(Present  Value,  Future  Value,  Periods) returns the
  1672.     compound growth rate per  period  for  an  annuity growing
  1673.     from the  present value to the future value over the given
  1674.     number of periods.
  1675.      @CGR(1000,1500,36) = 0.0194    (1.94%)
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.  
  1682.  
  1683.  
  1684.  
  1685.      36
  1686.  
  1687.  
  1688.     DATE AND TIME FUNCTIONS
  1689.  
  1690.     QubeCalc represents dates as  serial numbers  where Jan 1,
  1691.     1900  =  1,  Jan  2,  1900  =  2,  and so on.  This number
  1692.     represents the number of days from Dec 31, 1899.   Time is
  1693.     represented as  a fraction  of a day where midnight = 0.0,
  1694.     noon = 0.5, 6:00PM = 0.75, and so on.  This allows dates and
  1695.     times to be manipulated with ordinary math operations.  For
  1696.     example, you could find out what  day, month,  and year 90
  1697.     days from today is by simply adding 90 to the serial number
  1698.     which represents today's date.
  1699.  
  1700.     @NOW returns a number whose  integer  part  is  the serial
  1701.     number for  the current  date and fraction part represents
  1702.     the current time.  To take advantage of  this function you
  1703.     need to  set the  time and  date when  you boot up, or you
  1704.     must have a built in clock.  If the current  time and date
  1705.     were 8:05:17  AM on  July 4,  1976, then the @NOW function
  1706.     would return the value 27945.337.
  1707.  
  1708.     @DATE(Year, Month, Day) returns the serial  number for the
  1709.     given year, month, and day.
  1710.      @DATE(1976,7,4) = 27945
  1711.  
  1712.     @TIME(Hour, Minute,  Second) returns  the fraction for the
  1713.     given hour, minute, and second.
  1714.      @TIME(8,5,17) = 0.337
  1715.      @TIME(20,5,17) = 0.837
  1716.  
  1717.     @YEAR(X) returns the year for the serial date X.
  1718.      @YEAR(27945) = 1976
  1719.  
  1720.     @MONTH(X) returns the month for the serial date X.
  1721.      @MONTH(27945) = 7
  1722.  
  1723.     @DAY(X) returns the day for the serial date X.
  1724.      @DAY(27945) = 4
  1725.  
  1726.     @HOUR(X) returns the hour for the fraction time X.
  1727.      @HOUR(0.337) = 8
  1728.      @HOUR(0.837) = 20
  1729.  
  1730.  
  1731.  
  1732.                                                            37
  1733.  
  1734.  
  1735.  
  1736.     @MINUTE(X) returns the minute for the fraction time X.
  1737.      @MINUTE(0.337) = 5
  1738.  
  1739.     @SECOND(X) returns the second for the fraction time X.
  1740.      @SECOND(0.337) = 17
  1741.  
  1742.  
  1743.  
  1744.     LOGICAL FUNCTIONS
  1745.  
  1746.     @TRUE returns the value 1.
  1747.  
  1748.     @FALSE returns the value 0.
  1749.  
  1750.     @ISNUM(X) returns TRUE if X is a number.
  1751.         @ISNUM(23) returns TRUE
  1752.         @ISNUM("test") returns FALSE
  1753.  
  1754.     @ISTEXT(X) returns TRUE if X is text.
  1755.         @ISTEXT(23) returns FALSE
  1756.         @ISTEXT("test") returns TRUE
  1757.  
  1758.     @IF(CONDITION,  ARG1,  ARG2)  If  the  value  of CONDITION
  1759.     is true  (not equal to 0) then ARG1 is returned, otherwise
  1760.     ARG2 is returned.  The @IF function can return either text
  1761.     or numerical values (or both) as ARG1 and ARG2.
  1762.      @IF(2+3>4,11,@PI) = 11
  1763.      @IF(2-3>4,11,@PI) = 3.14159
  1764.      @IF(A1;1="Hello","Friendly","Hostile")
  1765.      @IF(TAXES<0.2,TAXES,"Revolt!")
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  
  1773.  
  1774.  
  1775.  
  1776.  
  1777.  
  1778.  
  1779.      38
  1780.  
  1781.  
  1782.  
  1783.     SPECIAL FUNCTIONS
  1784.  
  1785.     @CHOOSE(SELECTOR,  ARG1,  ARG2,...,  ARGN)  If  the  value
  1786.     of SELECTOR  is 1  then ARG1  is returned,  if SELECTOR is
  1787.     2  then  ARG2  is  returned,  and  so  on.  If SELECTOR is
  1788.     greater than  the number  of arguments  provided, ERROR is
  1789.     returned.    If  the  value  of SELECTOR is not an integer
  1790.     value, then the @CHOOSE function  will  use  the  value of
  1791.     SELECTOR  rounded   to  the  nearest  integer.    The  @IF
  1792.     function can return either text or numerical values (or both)
  1793.     as ARG1 and ARG2.
  1794.      @CHOOSE(3,2-1,@RAND,33,44) = 33
  1795.      @CHOOSE(1,2-1,@RAND,33,44) = -1
  1796.      @CHOOSE(0,2-1,@RAND,33,44) = ERROR
  1797.      @CHOOSE(5,2-1,@RAND,33,44) = ERROR
  1798.      @CHOOSE(DY,"Sun","Mon","Tue","Wed","Thu","Fri","Sat")
  1799.  
  1800.     NOTE:     The  @CHOOSE   function  in  Lotus  spreadsheets
  1801.     returns ARG1 if SELECTOR  is 0  (not 1  like in QubeCalc).
  1802.     This difference  is important  to remember if you import a
  1803.     Lotus file which uses the @CHOOSE function.
  1804.  
  1805.  
  1806.     @INDEX("block        name",ColOffset,RowOffset,PageOffset)
  1807.     returns the  value of  the cell  in "block  name" which is
  1808.     RowOffset rows, ColOffset  columns,  and  PageOffset pages
  1809.     from the  first cell  in "block name".  The top row of the
  1810.     block has a RowOffset of 0, the left  column of  the block
  1811.     has a ColOffset of 0, and the first page of the block has a
  1812.     PageOffset of 0.
  1813.  
  1814.     The "block name" does not actually  have to  be a complete
  1815.     range.  It may be a single cell (like "A1;1").
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.                                                            39
  1827.  
  1828.  
  1829.  
  1830.     EXAMPLE:  Using  the  spreadsheet  page  below  (page 1 in
  1831.     Face A)
  1832.  
  1833.              A     B     C     D     E
  1834.         1   abc   def   ghi   jkl   mno
  1835.         2    11    22    33    44    55
  1836.         3   pqr   stu   vwx   yza   bcd
  1837.         4    66    77    88    99   123
  1838.  
  1839.     @INDEX("A1;1",0,0,0) returns "abc"
  1840.     @INDEX("A1;1",2,1,0) returns  33
  1841.     @INDEX("A1;1",2,1,1) returns the value of the cell C3;2
  1842.     @INDEX("B3;1",3,1,0) returns 123
  1843.     @INDEX("BILL",3,1,0) returns 123  if  cell  B3;1  has been
  1844.     named "BILL"
  1845.  
  1846.     Notice that  the "block  name" is a string argument rather
  1847.     than a simple block reference like A1;1..C5;3.  This allows
  1848.     you to pull several nifty tricks.
  1849.  
  1850.     First, you should notice that
  1851.  
  1852.        @INDEX("A1;1",1,2,3)  and   @INDEX(A1;1,1,2,3)
  1853.  
  1854.     have VERY DIFFERENT MEANINGS!!!
  1855.  
  1856.     The first function (using "A1;1") says to use cell A1;1 as the
  1857.     first cell in the block.
  1858.  
  1859.     The second  function (using  A1;1 without  quotes) says to
  1860.     look in cell A1;1, read what is in that cell, and use what
  1861.     you have read as  the first  cell in  the block.   If, for
  1862.     example, cell A1;1 contains the text Z29;6, then Z29;6 will
  1863.     be used as the first cell in the block.  This is  known as
  1864.     "indirect addressing".   This  means you  can use a single
  1865.     @INDEX function to access any number of different blocks.
  1866.  
  1867.  
  1868.  
  1869.  
  1870.  
  1871.  
  1872.  
  1873.      40
  1874.  
  1875.  
  1876.  
  1877.     You may also use  the text  functions to  create different
  1878.     "block names" in the same @INDEX function.
  1879.  
  1880.     @INDEX("A1;"+@STRING(Z29;3,0),0,1,2) reads the value in cell
  1881.     Z29;3, converts it to a string with the  @STRING function,
  1882.     tacks it onto the string "A1;" and uses this new string as
  1883.     the "block name" to index into.
  1884.  
  1885.  
  1886.     **NOTE** RowOffset, ColOffset, and PageOffset refer to the
  1887.     row,  column,  and  page  offset  in  FACE  A.  If you are
  1888.     viewing your data from a face other than face A, the offset
  1889.     arguments will still be relative to face A.  This is done to
  1890.     keep the  @INDEX function  working the  same regardless of
  1891.     which face you happen to be viewing.
  1892.  
  1893.  
  1894.  
  1895.  
  1896.     TEXT FUNCTIONS
  1897.  
  1898.     QubeCalc provides  the following functions which allow you
  1899.     to manipulate  strings (text).   A  text string  used in a
  1900.     formula must be enclosed with quotes "like this".
  1901.  
  1902.     A formula which accepts text arguments may reference cells
  1903.     which contain text.  The referenced text may  be either an
  1904.     ordinary text cell or the results of a text formula.
  1905.  
  1906.     EXAMPLES:
  1907.  
  1908.     ="Hi"+" there" 
  1909.        will return and display "Hi there" (without the quotes)
  1910.  
  1911.     =A1;2+B3;4
  1912.      will return and display "Hi there" (without the quotes)
  1913.      if A1;2 contains "Hi" and B3;4 contains " there"
  1914.  
  1915.  
  1916.  
  1917.  
  1918.  
  1919.  
  1920.                                                            41
  1921.  
  1922.  
  1923.  
  1924.     @UPPER(S) converts S to all upper case.
  1925.      =@UPPER("Hello") returns "HELLO"
  1926.      =@UPPER("HeLLo") returns "HELLO"
  1927.  
  1928.     @LOWER(S) converts S to all lower case.
  1929.      =@LOWER("Hello") returns "hello"
  1930.      =@LOWER("HeLLo") returns "hello"
  1931.  
  1932.     @LEN(S) returns the number of characters in S.
  1933.      =@LEN("Hello there") returns 11
  1934.      =@LEN("This is a test") returns 14
  1935.  
  1936.     @VALUE(S) returns the number which S looks like.
  1937.      =@VALUE("1.23") returns the number 1.23
  1938.      =@VALUE("-43") returns the number -43.0
  1939.  
  1940.     @STRING(number,x)  returns  a  string which looks like the
  1941.     number, with x digits after the decimal.
  1942.      =@STRING(1.234,2) returns the string "1.23"
  1943.      =@STRING(5.123,0) returns the string "5" 
  1944.  
  1945.     @FIND(string1,string2,x) finds the first occurance of string1
  1946.     in string2 starting at position x. The first character of a
  1947.     string is position 1, the next character is position 2, and so
  1948.     on.  (Note that this differs from 1-2-3, which calls the first
  1949.     character position 0, the second character position 1, and so
  1950.     on).   The comparison  is case  sensitive (Upper and lower
  1951.     case letters must match exactly).  If you  don't want case
  1952.     sensitivity, then simply use the @UPPER function on both of
  1953.     the string arguments.  If a match is not found, then @FIND
  1954.     will return a value of zero.
  1955.      =@FIND("he","The cat is here",1) returns 2
  1956.      =@FIND("he","The cat is here",3) returns 12
  1957.      =@FIND("He","The cat is here",1) returns 0
  1958.  
  1959.     @MID(S,start,n) returns n characters from S, starting with
  1960.     position start.
  1961.      =@MID("abcdefghij",2,3)   returns    the   string   "bcd"
  1962.      =@MID("abcdefghij",9,5) returns the string "ij"
  1963.  
  1964.  
  1965.  
  1966.  
  1967.      42
  1968.  
  1969.  
  1970.  
  1971.     @LEFT(S,n) returns the n left characters from S
  1972.      =@LEFT("This is a test",4) returns the string "This"
  1973.  
  1974.     @RIGHT(S,n) returns the n right characters from S
  1975.      =@RIGHT("This is a test",4) returns the string "test"
  1976.  
  1977.     @REPLAC(STRING,START,N,NEWSTRING)         removes        N
  1978.     characters from STRING starting  at  character  START, and
  1979.     inserts  NEWSTRING  into  STRING  at  this  same position.
  1980.     @REPLAC can therefore be used  as  a  replace,  insert, or
  1981.     delete function.
  1982.  
  1983.     If  you  set  N  to  zero, then @REPLAC will simply insert
  1984.     NEWSTRING into STRING at position START.
  1985.  
  1986.     If  you  set  NEWSTRING  to  an  empty  string   "",  then
  1987.     @REPLAC  will  simply  delete  N  characters  starting  at
  1988.     position START.
  1989.      =@REPLAC("This is a test",11,4,"game") returns "This is a
  1990.     game"
  1991.      =@REPLAC("This is a test",11,0,"BIG ") returns "This is a
  1992.     BIG test"
  1993.      =@REPLAC("This is a test",5,3,"") returns "This a test"
  1994.  
  1995.  
  1996.  
  1997.  
  1998.  
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.                                                            43
  2015.  
  2016.  
  2017.     CELL DISPLAY FORMATS
  2018.  
  2019.     QubeCalc allows you to choose a  number of  different ways
  2020.     to display  numeric data  (cells which  contain numbers or
  2021.     formulas).  Changing the display format  of a  cell has no
  2022.     affect on the number or formula in the cell, it just changes
  2023.     how the result is displayed on the screen (or output  to a
  2024.     printer).
  2025.  
  2026.     When a cell is first filled with data, the cell will take on
  2027.     the global (WorkQube)  format.    You  can  see  what this
  2028.     format is  by pressing  the [F7]  STAT key.   The WorkQube
  2029.     format  may  be  changed  by  using  the  /WorkQube Format
  2030.     command.
  2031.  
  2032.     The format  of a  cell which  already contains data may be
  2033.     changed using  either  the  /Cell  Format  command  or the
  2034.     /Block Format command.
  2035.  
  2036.     If the  formatted value  contains more characters than the
  2037.     cell is able to display, then the cell display will be filled
  2038.     with asterisks  (*******).  You can fix this in one of two
  2039.     ways.  First, you can select a display format which requires
  2040.     fewer characters to display (or reduce the number of digits
  2041.     after the decimal point  to  be  displayed).    The second
  2042.     method is to increase the cell width using the /Cell Width
  2043.     command.  Cell widths are described in more  detail in the
  2044.     next section.
  2045.  
  2046.     The available formats are described below.
  2047.  
  2048.     Numbers  which  are  in  cells with the GENERAL format are
  2049.     displayed in as general a format as possible.  If the number
  2050.     is an  integer value,  then it will be displayed without a
  2051.     decimal point  or trailing  digits.   If the  number has a
  2052.     fractional part, then as many significant digits as possible
  2053.     will be displayed.  If the  column is  not wide  enough to
  2054.     display  even  the  integer  part  of the number, then the
  2055.     number will be displayed in scientific notation.
  2056.  
  2057.  
  2058.  
  2059.  
  2060.  
  2061.      44
  2062.  
  2063.  
  2064.  
  2065.     Numbers which are in  cells with  the CURRENCY  format are
  2066.     displayed with a leading dollar sign, and negative values are
  2067.     enclosed within  parentheses.   You must  specify how many
  2068.     digits you  want to  be displayed after the decimal point.
  2069.     You will also be asked whether you want commas to  be used
  2070.     to make large numbers more readable.
  2071.  
  2072.     Numbers  which  are  in  cells  with  the FIXED format are
  2073.     displayed with a  specified  number  of  places  after the
  2074.     decimal point displayed.  You will also be asked whether you
  2075.     want  commas  to  be  used  to  make  large  numbers  more
  2076.     readable.
  2077.  
  2078.     Numbers  which  are  in  cells with the PERCENT format are
  2079.     converted to a percentage value (multiplied by 100) and are
  2080.     displayed with a trailing percentage sign.  You must specify
  2081.     how many digits you want to be displayed after the decimal
  2082.     point.   You will also be asked whether you want commas to
  2083.     be used to make large numbers more readable.
  2084.  
  2085.     Numbers which are in cells with the SCIENTIFIC  format are
  2086.     displayed  in  scientific  notation.  This format displays
  2087.     numbers in the  form  M.MMME(+or-)XX  where  M.MMM  is the
  2088.     mantissa  and  XX  is  the  exponent.    Values  which are
  2089.     displayed with the scientific format will  contain as many
  2090.     significant digits as can be fit into the cell width (up to a
  2091.     maximum of 11 significant digits).
  2092.  
  2093.     VALUE      GENERAL   CURRENCY  PERCENT   SCIENTIF   FIXED
  2094.     1          1         $1.00     100.00%   1.000E+00  1.00
  2095.     10         10        $10.00    1000.00%  1.000E+01  10.00
  2096.     1.234      1.234     $1.23     123.40%   1.234E+00  1.23
  2097.     -1         -1        ($1.00)   -100.00%  -1.00E+00  -1.00
  2098.     -10        -10       ($10.00)  -1000.00% -1.00E+01  -10.00
  2099.     -1.234     -1.234    ($1.23)   -123.40%  -1.23E+00  -1.23
  2100.  
  2101.  
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.                                                            45
  2109.  
  2110.  
  2111.  
  2112.     Numbers which  are  in  cells  with  the  DATE  format are
  2113.     displayed as  a date.  QubeCalc represents dates as serial
  2114.     numbers where Jan 1, 1900 = 1, Jan 2, 1900 = 2, and so on.
  2115.     This serial  number represents the number of days from Dec
  2116.     31, 1899.  This format uses the value in the cell rounded to
  2117.     the nearest  integer as the serial number, and generates a
  2118.     display for the date corresponding to that number.   There
  2119.     are 4  available date formats which are shown below (along
  2120.     with some examples).
  2121.  
  2122.     VALUE      dd-mmm-yy      dd-mmm    mmm-yy    mm/dd/yy
  2123.     1          01-Jan-00      01-Jan    Jan-00    01/01/00
  2124.     15000      24-Jan-41      24-Jan    Jan-41    01/24/41
  2125.     27945      04-Jul-76      04-Jul    Jul-76    07/04/76
  2126.  
  2127.     Numbers which  are  in  cells  with  the  TIME  format are
  2128.     displayed as a time.  QubeCalc represents time as a fraction
  2129.     of a day where midnight is the start of the day (0.0), noon
  2130.     is half a day (0.5), 6PM is 0.75 of a day and so on.  This
  2131.     format uses the fractional part of the value in the cell, and
  2132.     generates  a  display  for  the time corresponding to that
  2133.     number.  There are  2  available  time  formats  which are
  2134.     shown below (along with some examples).
  2135.  
  2136.     VALUE      AM/PM          Military (24 Hour)
  2137.     0.337      08:05:17AM     08:05:17
  2138.     12.337     08:05:17AM     08:05:17
  2139.     0.68       04:19:12PM     16:19:12
  2140.  
  2141.     Numbers  which  are  in  cells  with the HIDDEN format are
  2142.     NOT displayed.  The data is still in the cell and the number
  2143.     (or formula) contents are still shown on the command line.
  2144.  
  2145.  
  2146.  
  2147.  
  2148.  
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.      46
  2156.  
  2157.  
  2158.     CELL WIDTHS
  2159.  
  2160.     QubeCalc  assigns  a  width  to each cell in the WorkQube.
  2161.     The width of a cell  is  a  number  which  tells  how many
  2162.     characters can be displayed in the cell.  This width is used
  2163.     to help determine how wide the columns should be.
  2164.  
  2165.     A width is assigned to each individual cell (instead of to
  2166.     columns like  in 2D  spreadsheets) because  each cell is a
  2167.     member  of  3  different   columns  (depending   on  which
  2168.     Perspective you are looking at).  Columns are automatically
  2169.     adjusted to be the  same  width  as  the  widest non-BLANK
  2170.     cell in the column.  If all the cells in a column are blank,
  2171.     the column width is  set to  the global  (WorkQube) width.
  2172.     This allows column widths to remain flexible regardless of
  2173.     which perspective you are viewing.
  2174.  
  2175.     The width of a cell may be any  number in  the range  1 to
  2176.     75.   If a  cell is not wide enough to display a formatted
  2177.     value or formula, the cell  display  will  be  filled with
  2178.     asterisks  (*****).    You  may  change cell widths either
  2179.     individually (using the /Cell Width command) or as a block
  2180.     (using the /Block Width command).
  2181.  
  2182.     When  the  WorkQube  width  setting  is changed (using the
  2183.     /WorkQube Width command) it  will affect  only those cells
  2184.     which will be filled in the future and will not affect those
  2185.     cells which already contain data.
  2186.  
  2187.     The width of the current cell is always displayed at the end
  2188.     of the cell status line in the upper left hand corner.  It is
  2189.     the number which is enclosed in parenthesis... i.e. (9).
  2190.  
  2191.     Special care needs to be taken when copying cells to other
  2192.     locations.  Because a width is assigned to each individual
  2193.     cell (rather than to a column), if you copy a cell which has
  2194.     a cell width larger than the column you copy it to, it will
  2195.     increase the width of the new column.
  2196.  
  2197.  
  2198.  
  2199.  
  2200.  
  2201.  
  2202.                                                            47
  2203.  
  2204.  
  2205.     ABSOLUTE AND RELATIVE CELL REFERENCES
  2206.  
  2207.     Cell references in a formula  can  be  either  absolute or
  2208.     relative.  Absolute cell references begin with the character
  2209.     "$" (for example $A1;1), but relative cell references do not
  2210.     use any special character (for example A1;1).
  2211.  
  2212.     The value  of a  formula is the same regardless of whether
  2213.     cell references in the formula are relative or absolute.  For
  2214.     example, the  formula =@SIN(A1;1) will have the same value
  2215.     as =@SIN($A1;1).  The  purpose  of  relative  and absolute
  2216.     references is  to let QubeCalc know what to do when moving
  2217.     formulas around  from  cell  to  cell  (for  example: when
  2218.     copying, inserting, deleting).  You can have both absolute
  2219.     and relative references in the same equation if you want.
  2220.  
  2221.     An  ABSOLUTE  cell  reference  in  a  formula  will ALWAYS
  2222.     point to the exact same cell no matter where the formula is
  2223.     moved to.
  2224.  
  2225.     A RELATIVE cell reference  in a  formula ALWAYS  points to
  2226.     the cell  which is  a certain  number of  rows and columns
  2227.     away.  If the formula  is  moved,  the  new  relative cell
  2228.     reference will  be adjusted  to point to the cell the same
  2229.     number of rows and columns away from the new cell.
  2230.  
  2231.  
  2232.     EXAMPLE:
  2233.  
  2234.     The cell at location C3;1 contains the formula =$A1;1+A1;1.
  2235.  
  2236.  
  2237.        A    B    C    D    E      
  2238.     1              Absolute reference      
  2239.     2                             
  2240.     3               =$A1;1+A1;1       
  2241.     4                             
  2242.     5      Relative reference  
  2243.     6        (2 columns left & 2 rows up)  
  2244.                                   
  2245.  
  2246.  
  2247.  
  2248.  
  2249.      48
  2250.  
  2251.  
  2252.  
  2253.     The first cell reference "$A1;1" is an absolute reference.
  2254.     The value  in cell A1;1 should ALWAYS be used as the value
  2255.     of this reference (even if the formula is copied or moved).
  2256.  
  2257.     The second reference "A1;1" is a relative reference (because
  2258.     it has no "$").  Since cell A1;1 is 2 columns to the left of
  2259.     and 2 rows above cell C3;1, the value of this reference is
  2260.     taken from the cell which is 2 columns to the left of and 2
  2261.     rows above the formula (even if  the formula  is copied or
  2262.     moved).
  2263.  
  2264.     If the contents of cell C3;1 is now copied to cell D5;1, the
  2265.     contents of D5;1 will be =$A1;1+B3;1.
  2266.  
  2267.  
  2268.        A    B    C    D    E
  2269.     1                   Absolute reference
  2270.     2                  
  2271.     3                  
  2272.     4                  
  2273.     5                    =$A1+B3
  2274.     6         
  2275.           Relative reference
  2276.             (2 columns left & 2 rows up)       
  2277.  
  2278.  
  2279.     Notice that the absolute reference did NOT change (it still
  2280.     points  "ABSOLUTELY"  to  cell  A1;1),  but  the  relative
  2281.     reference was adjusted so that it points to cell B3;1 (cell
  2282.     B3;1 is  the cell  which is 2 columns to the left of and 2
  2283.     rows above the new cell D5;1).
  2284.  
  2285.  
  2286.     Relative references to other pages are also adjusted when a
  2287.     page is inserted or deleted, or data is copied from one page
  2288.     to another.
  2289.  
  2290.  
  2291.  
  2292.  
  2293.  
  2294.  
  2295.  
  2296.                                                            49
  2297.  
  2298.  
  2299.     DEFINING A 3D BLOCK OF CELLS
  2300.  
  2301.     QubeCalc  provides  many  functions   and  commands  which
  2302.     operate on a 2 dimensional range of cells or a 3 dimensional
  2303.     block of cells (for example, the [F3] BLOCK function and all
  2304.     of the  /Block commands).   These  commands require you to
  2305.     define a block of cells to perform the operation on.  There
  2306.     are two different ways to define a block of cells.
  2307.  
  2308.     1.  You may simply type in the block.  This block consists
  2309.     of two cell references separated by two periods (for example
  2310.     A1;1..Z20;5).  The two cell references (in this case A1;1 and
  2311.     Z20;5) should be the cells at opposite corners of the block
  2312.     to be defined.
  2313.  
  2314.     2.    You  may  also  define  a range or block of cells by
  2315.     highlighting the desired block and then pressing the return
  2316.     key.
  2317.  
  2318.     When a  block is  being defined all the cells in the block
  2319.     (which are visible) will be highlighted on the screen.  On
  2320.     the command line you will see either a single cell address
  2321.     or a block address (2 cell addresses separated by 2 periods).
  2322.     A single  cell address means that an "anchor" cell has not
  2323.     been selected.  In this case, moving around with the arrow
  2324.     keys  or  the  PgUp  or  PgDn  key  simply  moves the cell
  2325.     pointer to a new cell, but does not highlight (or define) any
  2326.     other cells.  If an anchor cell has been selected then ALL
  2327.     cells between the anchor cell  and  the  current  cell are
  2328.     defined (and highlighted if visible).
  2329.  
  2330.     The following keys are useful (or necessary) when defining
  2331.     a block:
  2332.  
  2333.     The arrow keys, PgUp,  PgDn, Ctrl  Left Arrow,  Ctrl Right
  2334.     Arrow, Ctrl PgUp, and Ctrl PgDn allow you to move the cell
  2335.     pointer around.
  2336.  
  2337.     The Return key causes all the  cells in  the block  on the
  2338.     command line to be defined.  If only a single cell reference
  2339.     is displayed when you press the return key, then that cell
  2340.     will be defined.
  2341.  
  2342.  
  2343.      50
  2344.  
  2345.  
  2346.     Typing a period (.) when defining a block sets the anchor to
  2347.     the current cell.  If an anchor was set before you pressed
  2348.     the period then it is released before the new one is set.
  2349.  
  2350.     The ESC key releases the anchor if it is set.  If the anchor
  2351.     is not set and you type the ESC key then  you are returned
  2352.     to whatever you were doing before you started defining the
  2353.     block.
  2354.  
  2355.     The [F4] ABS key toggles the block cell references between
  2356.     absolute and relative types.  If no anchor is set then the
  2357.     first coordinate is toggled.  If the anchor has been set then
  2358.     the [F4] key will toggle the non-anchor reference.  The two
  2359.     types of cell references are described in more detail in the
  2360.     section     titled     ABSOLUTE    AND    RELATIVE    CELL
  2361.     REFERENCES.
  2362.  
  2363.     The [F5] GOTO  &  [F6]  FIND  keys  allow  you  to  GOTO a
  2364.     given cell or FIND a given string during a block definition.
  2365.     These functions allow  you  to  move  around  the WorkQube
  2366.     during a block definition without having to use the cursor
  2367.     movement  keys.    These  commands  are  described  in the
  2368.     section titled MOVING AROUND IN THE WORKQUBE.
  2369.  
  2370.  
  2371.  
  2372.  
  2373.  
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.  
  2385.  
  2386.  
  2387.  
  2388.  
  2389.  
  2390.                                                            51
  2391.  
  2392.  
  2393.     EDITING THE CONTENTS OF A CELL
  2394.  
  2395.     QubeCalc provides  the ability to edit the data in a cell.
  2396.     You can call this editing function by hitting the [F2] EDIT
  2397.     key (if there is anything in the cell to edit).  Also, if you
  2398.     make  an  error  when  entering  a  formula  this  editing
  2399.     capability will be called automatically.
  2400.  
  2401.     The Left  arrow and  Right arrow  keys move the cursor one
  2402.     character to the left or right.
  2403.  
  2404.     The Home and End  keys move  the cursor  to the  first and
  2405.     last characters in the line.
  2406.  
  2407.     The Backspace key deletes the character to the left of the
  2408.     cursor and shifts the following characters in the line to the
  2409.     left to fill in the empty space.
  2410.  
  2411.     The Ctrl-Backspace sequence deletes the entire line.
  2412.  
  2413.     The Delete key deletes the character underneath the cursor
  2414.     and shifts the following characters in the line to the left to
  2415.     fill in the empty space.
  2416.  
  2417.     The Insert key toggles between insert and overwrite modes.
  2418.     When you are in insert mode, typing a character will insert
  2419.     the new  character into  the line  at the  point where the
  2420.     cursor is.  The character under the cursor and those to the
  2421.     right of  the cursor are shifted to the right to make room
  2422.     for the new character.   When  you are  in overwrite mode,
  2423.     typing a  character will  replace the  character under the
  2424.     cursor with the new character.
  2425.  
  2426.     When you select insert mode, it will remain in effect until
  2427.     you change it (it doesn't go back to overwrite mode as soon
  2428.     as you finish editing).  If you are in insert mode, the letter
  2429.     "I" will be visible on the bottom line of the screen between
  2430.     the memory indicator and the AutoCalc status.
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.      52
  2438.  
  2439.  
  2440.  
  2441.     If you attempt to  edit a  cell which  contains a  link to
  2442.     another spreadsheet,  you will be allowed to edit both the
  2443.     name of the file to link to, and the name of the  block to
  2444.     link to.
  2445.  
  2446.     There is a shortcut available when you are entering a cell
  2447.     reference or a block reference in a formula.  This shortcut
  2448.     involves using  the [F3]  BLOCK function key.  Rather than
  2449.     typing  in  cell  or   block   references   (for  example,
  2450.     B14;2..C15;3), the  [F3] BLOCK  key allows  you to use the
  2451.     movement keys to move the cell  pointer to  "point" to the
  2452.     cell (or  cells) you  want to be in the formula.  The cell
  2453.     reference (or the block  reference if  you are  defining a
  2454.     block) are inserted into the formula you are entering.  This
  2455.     reference will be adjusted in the formula as  you move the
  2456.     cell pointer  around the  WorkQube.  When the reference is
  2457.     the one you want, you simply hit the return key to continue
  2458.     entering the rest of the formula.
  2459.  
  2460.     As an example, lets say you want to enter a formula in the
  2461.     current cell which takes the absolute value of the cell just
  2462.     below the current cell.  You would first type:
  2463.  
  2464.        =@ABS(
  2465.  
  2466.     Then, instead  of typing in the name of the cell below the
  2467.     current cell, you could simply  hit  the  [F3]  BLOCK key.
  2468.     This  would  put  the  name  of  the current cell into the
  2469.     formula like this:
  2470.  
  2471.        =@ABS(C14;2
  2472.  
  2473.     You could then  type  the  Down  Arrow  to  move  the cell
  2474.     pointer down one cell.  This would change the C14;2 in the
  2475.     formula above to the name of this new cell:
  2476.  
  2477.        =@ABS(C15;2
  2478.  
  2479.  
  2480.  
  2481.  
  2482.  
  2483.  
  2484.                                                            53
  2485.  
  2486.  
  2487.  
  2488.     Since this is what you wanted, you just hit the return key
  2489.     to allow  you to  finish your formula.  Then just type the
  2490.     right parentheses ) and  hit the  return key  to enter the
  2491.     formula into the cell.  More information on defining blocks
  2492.     can be  found in  the section  titled DEFINING  A 3D BLOCK
  2493.     OF CELLS.
  2494.  
  2495.     Whenever you  are in  the [F3]  BLOCK mode you may use the
  2496.     [F4] ABS function key to toggle the cell or block references
  2497.     between  ABSOLUTE  and  RELATIVE  (this toggles the "$" on
  2498.     and off).  More  information  on  the  two  types  of cell
  2499.     references  can  be  found  in the section titled ABSOLUTE
  2500.     AND RELATIVE CELL REFERENCES.
  2501.  
  2502.  
  2503.  
  2504.  
  2505.  
  2506.  
  2507.  
  2508.  
  2509.  
  2510.  
  2511.  
  2512.  
  2513.  
  2514.  
  2515.  
  2516.  
  2517.  
  2518.  
  2519.  
  2520.  
  2521.  
  2522.  
  2523.  
  2524.  
  2525.  
  2526.  
  2527.  
  2528.  
  2529.  
  2530.  
  2531.      54
  2532.  
  2533.  
  2534.     CELL COMMANDS
  2535.  
  2536.     The  /Cell  option  of  the  main  menu  provides  several
  2537.     commands to manipulate the contents and status of a single
  2538.     cell.  The cell which is  affected  is  the  one  which is
  2539.     currently highlighted on the screen by the cell pointer and
  2540.     is known as the  current cell.   The  /Cell commands which
  2541.     are available are:
  2542.  
  2543.     Format  Width  Erase  Justify  Copy
  2544.  
  2545.     CELL FORMAT
  2546.  
  2547.     The /Cell  Format command  allows you to set or change the
  2548.     way numerical  data  in  the  current  cell  is displayed.
  2549.     Numerical data  means either  a number or a formula (which
  2550.     yields a number).  If the cell is BLANK then the format will
  2551.     NOT  be  changed  and  the  cell will continue to have the
  2552.     WorkQube  Format  (which   can   be   changed   using  the
  2553.     /WorkQube  Format  command).    The  available formats are
  2554.     Currency, Fixed, Percent, Scientific, Date, Time, General,
  2555.     and  Hidden.    For  more  information  on formats see the
  2556.     section titled CELL DISPLAY FORMATS.
  2557.  
  2558.  
  2559.     CELL WIDTH
  2560.  
  2561.     The /Cell Width command  allows you  to change  the number
  2562.     of characters which can be displayed in the current cell.  If
  2563.     the cell is BLANK then the width will  NOT be  changed and
  2564.     the cell  will continue  to have the WorkQube Width (which
  2565.     can be changed using  the /WorkQube  Width command).   The
  2566.     width of a cell can be any value in the range 1 to 75.  For
  2567.     more information on cell widths see the section titled CELL
  2568.     WIDTHS.
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.                                                            55
  2579.  
  2580.  
  2581.     CELL ERASE
  2582.  
  2583.     The /Cell  Erase command  allows you to erase the contents
  2584.     of the current cell.  All the characteristics of the current
  2585.     cell will return to the global (WorkQube) settings.  This 
  2586.  
  2587.     includes the display format, the number of digits after the
  2588.     decimal point, and the cell width.  The cell type  will be
  2589.     reset to  BLANK and  the memory  used by  the cell will be
  2590.     deallocated for use by future data.
  2591.  
  2592.     CELL JUSTIFY
  2593.  
  2594.     The /Cell Justify command allows  you  to  change  the way
  2595.     text strings are displayed (justified) in the current cell.
  2596.     Text may be left justified, right justified, or centered in the
  2597.     cell.  If the cell is BLANK then the justification will NOT
  2598.     be changed and the cell will continue to have the WorkQube
  2599.     Justification  (which  can  be changed using the /WorkQube
  2600.     Justify command).  For more information on justification see
  2601.     the  section   titled  ENTERING  DATA  INTO  THE  WORKQUBE
  2602.     (Text).
  2603.  
  2604.  
  2605.     CELL COPY (REPLICATE)
  2606.  
  2607.     The /Cell Copy command allows you to copy a single cell to
  2608.     a 3 dimensional block of cells.  First, move the cell pointer
  2609.     to the cell to  be  copied,  then  select  the  /Cell Copy
  2610.     command.   You will  then be  asked to define the block to
  2611.     copy the cell to.  You  may use  any of  the movement keys
  2612.     (including the [F5] GOTO and [F6] FIND keys) to define the
  2613.     block as described in the  section  titled  DEFINING  A 3D
  2614.     BLOCK OF CELLS. 
  2615.  
  2616.     Once  the  block  has  been  defined  the  contents of the
  2617.     original cell will be copied into each cell in the block.  If
  2618.     the original  cell contains  a formula  with relative cell
  2619.     references, those references will be adjusted when they are
  2620.     copied to  the new cells (for more information on relative
  2621.     cell  references  see  the  section  titled  ABSOLUTE  AND
  2622.     RELATIVE CELL REFERENCES.
  2623.  
  2624.  
  2625.      56
  2626.  
  2627.  
  2628.     BLOCK COMMANDS
  2629.  
  2630.     The  /Block  option  of  the  main  menu  provides several
  2631.     commands  to  manipulate  the  contents  and  status  of a
  2632.     defined block of cells.  The defined block may consist of a
  2633.     single cell, a  2  dimensional  range  of  cells,  or  a 3
  2634.     dimensional  block  of  cells.    The  block is defined as
  2635.     described  in  the  section  above  called  DEFINING  A 3D
  2636.     BLOCK   OF   CELLS.      The  /Block  commands  which  are
  2637.     available are:
  2638.  
  2639.     Format Width Erase Justify Copy DataFill Name Link Sort
  2640.  
  2641.     BLOCK FORMAT
  2642.  
  2643.     The /Block Format command  allows  you  to  set  or change
  2644.     the way numerical data in each cell in a block is displayed.
  2645.     Numerical data means either a number  or a  formula (which
  2646.     yields a  number).   All of the cells in the defined block
  2647.     which contain data will be set to the new format  that you
  2648.     choose.  Cells in the block which are BLANK, however, will
  2649.     NOT be changed and the  cell  will  continue  to  have the
  2650.     WorkQube   Format   (which   can   be  changed  using  the
  2651.     /WorkQube Format  command).    The  available  formats are
  2652.     Currency, Fixed, Percent, Scientific, Date, Time, General,
  2653.     and Hidden.   For  more  information  on  formats  see the
  2654.     section titled CELL DISPLAY FORMATS.
  2655.  
  2656.  
  2657.     BLOCK WIDTH
  2658.  
  2659.     The /Block  Width command  allows you to change the number
  2660.     of characters  which can  be displayed  in each  cell in a
  2661.     block.  All of the cells in the defined block which contain
  2662.     data will be set to the new width that you choose.
  2663.     Cells in the block which are  BLANK, however,  will NOT be
  2664.     changed and  the cell  will continue  to have the WorkQube
  2665.     Width (which can  be  changed  using  the  /WorkQube Width
  2666.     command).   The width  of a  cell can  be any value in the
  2667.     range 1 to 75.  For more information on cell widths see the
  2668.     section titled CELL WIDTHS.
  2669.  
  2670.  
  2671.  
  2672.                                                            57
  2673.  
  2674.  
  2675.     BLOCK ERASE
  2676.  
  2677.     The /Block  Erase command allows you to erase the contents
  2678.     of all the cells in a block.  All the characteristics of every
  2679.     cell  in  the  defined  block  will  return  to the global
  2680.     (WorkQube) settings.  This includes the display format, the
  2681.     number of digits after the decimal point, and the cell width.
  2682.     The cell type of each cell will be reset to  BLANK and the
  2683.     memory used  by the  cells will  be deallocated for use by
  2684.     future data.
  2685.  
  2686.  
  2687.     BLOCK JUSTIFY
  2688.  
  2689.     The /Block Justify command  allows you  to change  the way
  2690.     text strings are displayed in each cell in a block.  Text may
  2691.     be left justified, right justified, or centered in each cell.
  2692.     All of the cells which contain TEXT will be set to the new
  2693.     justification that you choose.  Cells in the block which are
  2694.     BLANK,  however,  will  NOT  be  changed and the cell will
  2695.     continue to have the WorkQube Justification  (which can be
  2696.     changed using  the /WorkQube  Justify command).   For more
  2697.     information on justification see the section titled ENTERING
  2698.     DATA INTO THE WORKQUBE (Text).
  2699.  
  2700.  
  2701.  
  2702.     BLOCK COPY
  2703.  
  2704.     The /Block  Copy command  allows you to copy a 3D block of
  2705.     cells to the current cell location.  First,  move the cell
  2706.     pointer to the cell where you want the block of cells copied
  2707.     to.  Then select the /Block Copy command.   You  will then
  2708.     be asked  to define  the block which is to be copied.  You
  2709.     may use any  of  the  movement  keys  (including  the [F5]
  2710.     GOTO and  [F6] FIND keys) to define the block as described
  2711.     in the section titled DEFINING A 3D BLOCK OF CELLS.
  2712.  
  2713.     Once the block has been defined the block of cells will be
  2714.     copied to  the new  location.  The upper, left cell on the
  2715.     lowest page in the block will be the  one which  is copied
  2716.     into the current cell.  If any cells in the block contain a
  2717.     formula with relative cell references, those references will
  2718.  
  2719.      58
  2720.  
  2721.  
  2722.     be adjusted  during the copy to the new location (for more
  2723.     information on relative cell references see the section titled
  2724.     ABSOLUTE AND RELATIVE CELL REFERENCES.
  2725.  
  2726.     If  the  block  you  define  to  copy with the /Block Copy
  2727.     command is a two  dimensional range  (not multiple pages),
  2728.     then  QubeCalc  will  ask  you  how many pages you want to
  2729.     copy it to.   This  allows  you  to  create  a spreadsheet
  2730.     template on  one page,  and then  copy that template to as
  2731.     many pages  in the  WorkQube as  you want  (or have memory
  2732.     for).
  2733.  
  2734.     As an example of how this works:
  2735.  
  2736.     1.  Goto the first page you want something copied to.
  2737.     2.  Select the /Block Copy command.
  2738.     3.  Go define the 2D range (or page) you want copied.
  2739.     4.   QubeCalc will  now ask you how many pages you want to
  2740.     copy to.
  2741.     5.  Enter the number of pages to copy to.
  2742.  
  2743.  
  2744.  
  2745.  
  2746.     BLOCK DATAFILL
  2747.  
  2748.     The /Block DataFill  command  provides  a  way  to  fill a
  2749.     specified block  of cells with a sequence of numbers.  You
  2750.     are asked for an equation which  is used  to determine the
  2751.     values placed  in each  of the  cells to  be filled.  This
  2752.     equation may  be  any  legal  formula  containing numbers,
  2753.     operators,  cell  or  block  references, or functions.  In
  2754.     addition, the DataFill command provides a variable named #
  2755.     which is initialized to 0 and is incremented by 1 for each
  2756.     cell in  the block.   This  variable may  be used anywhere
  2757.     within  the  equation  to  provide  an  endless  number of
  2758.     sequences which may be generated.  The cells  in the block
  2759.     are  filled  in  the  default WorkQube order (which may be
  2760.     changed using the /WorkQube Order command).
  2761.  
  2762.  
  2763.  
  2764.  
  2765.  
  2766.                                                            59
  2767.  
  2768.  
  2769.  
  2770.     A sample of some equations and the types  of sequence they
  2771.     generate is:
  2772.  
  2773.     =# (or simply hitting return) generates a sequence from 0 to
  2774.     the of cells in the block.  (0,1,2,3,4,5,6...)
  2775.  
  2776.     =#*3+5  generates  a   sequence   starting   with   5  and
  2777.     incrementing by 3.  (5,8,11,14,17,20...)
  2778.  
  2779.     =@EXP(#)  generates  an  exponential sequence (notice that
  2780.     sequences are not limited to fixed step sizes  as in other
  2781.     spreadsheet fill commands!)
  2782.  
  2783.     =@RAND  generates  a  sequence  of  random numbers between
  2784.     zero and one (with a uniform distribution).
  2785.  
  2786.  
  2787.  
  2788.     BLOCK NAME
  2789.  
  2790.     The /Block Name command  allows you  to give  a name  to a
  2791.     cell  or  block  of  cells.    This  name can then be used
  2792.     anywhere that a cell or block reference can be used.
  2793.  
  2794.     For example:
  2795.  
  2796.     If you assigned the name "COST"  to cell  C5;1 and "PRICE"
  2797.     to D7;3 then:
  2798.  
  2799.     1.  The formula
  2800.  
  2801.      =PRICE-COST is identical to =D7;3-C5;1
  2802.  
  2803.     2.   You can go to cell C5;1 by typing COST when using the
  2804.     [F5]GOTO key.
  2805.  
  2806.  
  2807.  
  2808.  
  2809.  
  2810.  
  2811.  
  2812.  
  2813.      60
  2814.  
  2815.  
  2816.  
  2817.     If you assigned the name "PRICES" to the  block B3;1..C6;3
  2818.     then:
  2819.  
  2820.     1.  The formula
  2821.  
  2822.      =@AVG(PRICES) is identical to =@AVG(B3;1..C6;3)
  2823.  
  2824.     2.   You can  go to  cell B3;1 by typing PRICES when using
  2825.     [F5]GOTO.  When you  use  the  [F5]GOTO  key  to  go  to a
  2826.     block, you will be placed at the near, upper left cell in the
  2827.     block.
  2828.  
  2829.     3.  You can erase block  B3;1..C6;3 (or  perform any other
  2830.     block  command)  by  typing  PRICES when you are asked for
  2831.     the block to use.
  2832.  
  2833.  
  2834.     You define a  block  name  by  selecting  the  /Block Name
  2835.     command.    When  you  select  this  command  you  will be
  2836.     presented with the following menu:
  2837.  
  2838.     Define  Undefine  List
  2839.  
  2840.     DEFINE:
  2841.     This option lets you  name the  cell or  block.   When you
  2842.     select this  option you are asked what name you would like
  2843.     to give to the cell or block.  This name must begin with a
  2844.     letter of the alphabet and can be up to 8 characters long.
  2845.     You are then asked to define the block to name.  Just mark
  2846.     off the block (or cell), hit return, and that's it.
  2847.  
  2848.     UNDEFINE:
  2849.     This option releases the block name which is associated with
  2850.     a block.  When you select this option, just enter the name
  2851.     of the block to release and it will be done.
  2852.  
  2853.     LIST:
  2854.     This option lists the current block names (you can have up
  2855.     to 51 block names defined in a spreadsheet).
  2856.  
  2857.  
  2858.  
  2859.  
  2860.                                                            61
  2861.  
  2862.  
  2863.  
  2864.     BLOCK LINK
  2865.  
  2866.     The  /Block  Link  command  allows  you  to  link multiple
  2867.     spreadsheets together.  You are not limited to linking to a
  2868.     single cell.  You may link to an entire 3 dimensional block
  2869.     within the other spreadsheet.
  2870.  
  2871.     You create  the link  using the  /Block Link command.  The
  2872.     link which you create will be placed in the cell which the
  2873.     cell pointer is currently sitting on.  When you select the
  2874.     /Block Link command, you will be asked for two items:
  2875.  
  2876.     1.  The name of the QubeCalc file you want to link to.  Do
  2877.     not add the .QUB extension; QubeCalc will do this for you.
  2878.     The file you want to link to must already exist, or QubeCalc
  2879.     will ignore your entry.
  2880.  
  2881.     2.  The name of the block you want to link to.  This block
  2882.     name can be:
  2883.  
  2884.      - a cell reference (example: C32;4)
  2885.      - a block reference (example: B10;2..C13;5)
  2886.      - a block name (example: INTEREST)
  2887.  
  2888.     It is usually best to use a block name rather than a cell or
  2889.     block reference in case the block reference you link to is
  2890.     modified in some way.
  2891.  
  2892.     The cell which you are sitting on when you create the link
  2893.     will contain the actual link, and is known as the "link cell".
  2894.  
  2895.     If you create a link to a single cell in another spreadsheet
  2896.     file, then the link cell will take on the same value as the
  2897.     cell in the other file.  If you change the value of the cell
  2898.     in the other file, the value of the linked cell will change
  2899.     also.
  2900.  
  2901.  
  2902.  
  2903.  
  2904.  
  2905.  
  2906.  
  2907.      62
  2908.  
  2909.  
  2910.  
  2911.     If  you  create  a  link  to  a  block of cells in another
  2912.     spreadsheet file, then the link cell will take on the same
  2913.     value as the cell in the upper left corner of the block in
  2914.     the other file.  The cells to the right of and below the link
  2915.     cell will take on the values of the corresponding cells from
  2916.     the block in the other file.
  2917.  
  2918.     Links to cells or blocks in other spreadsheets always take
  2919.     on the  NUMERICAL value of the cells which they are linked
  2920.     to.  If you link to a cell which contains either TEXT or a
  2921.     formula which returns a string value, then the link will take
  2922.     on the value 0 for that cell.
  2923.  
  2924.  
  2925.  
  2926.     BLOCK SORT
  2927.  
  2928.     The /Block Sort command allows  you  to  sort  a  range of
  2929.     cells by  row or column.  When you select this command you
  2930.     are presented with the following menu:
  2931.  
  2932.     Block  Key  Options  Go
  2933.  
  2934.     Selecting Block lets you define the range of cells you want
  2935.     sorted.
  2936.  
  2937.     Selecting Key  lets you  select the row or column you want
  2938.     to sort on.
  2939.  
  2940.     Selecting Options lets you select whether you want to sort:
  2941.  
  2942.      - ROWS or COLUMNS
  2943.      - TEXT or NUMBERS
  2944.      - in ASCENDING or DESCENDING order
  2945.  
  2946.     Selecting Go performs the sort using the current range, key,
  2947.     and options.
  2948.  
  2949.  
  2950.  
  2951.  
  2952.  
  2953.  
  2954.                                                            63
  2955.  
  2956.  
  2957.  
  2958.     The sort is performed "in place".  In other words, when the
  2959.     data has been sorted,  the  rows  (or  columns)  which are
  2960.     sorted  are  the  only  ones  which can change.  Blank and
  2961.     unsorted rows (or columns) are not "filtered up" to the top
  2962.     of the range. 
  2963.  
  2964.     For example,  supposed you  wanted to  sort the numbers in
  2965.     following data in  ascending  order.    When  the  sort is
  2966.     finished,  the  numbers  have  been  sorted,  and the text
  2967.     headers, underlining, and blank  lines  remain  where they
  2968.     were and are not filtered to the top or bottom.
  2969.  
  2970.  
  2971.     BEFORE SORT                    AFTER SORT
  2972.  
  2973.  
  2974.     HEADER 1                       HEADER 1
  2975.        6                              1
  2976.        3                              2
  2977.  
  2978.        4                              3
  2979.        2                              4
  2980.     HEADER 2                       HEADER 2
  2981.        7                              5
  2982.  
  2983.        1                              6
  2984.        5                              7
  2985.  
  2986.  
  2987.     Although QubeCalc only lists a single key to sort on, it is
  2988.     actually possible to sort a range on as  many keys  as you
  2989.     want.  Simply sort the range on the last key first, the next
  2990.     to last key second, and so on (the primary key will be the
  2991.     last one you sort on).
  2992.  
  2993.  
  2994.  
  2995.  
  2996.  
  2997.  
  2998.  
  2999.  
  3000.  
  3001.      64
  3002.  
  3003.  
  3004.  
  3005.     For example,  suppose you want to sort the following range
  3006.     on the keys shown (all in ascending order):
  3007.  
  3008.  
  3009.     KEY1       KEY2      KEY3
  3010.     cat        yellow    2
  3011.     fish       gold      1
  3012.     dog        brown     4
  3013.     fish       black     1
  3014.     cat        yellow    1
  3015.     cat        black     3
  3016.  
  3017.     First sort on KEY3, using Rows,  Numbers, Ascending.   You
  3018.     will get:
  3019.  
  3020.     fish       gold      1
  3021.     fish       black     1
  3022.     cat        yellow    1
  3023.     cat        yellow    2
  3024.     cat        black     3
  3025.     dog        brown     4
  3026.  
  3027.     Next sort  on KEY2, using Rows, Text, Ascending.  You will
  3028.     get:
  3029.  
  3030.     fish       black     1
  3031.     cat        black     3
  3032.     dog        brown     4
  3033.     fish       gold      1
  3034.     cat        yellow    1
  3035.     cat        yellow    2
  3036.  
  3037.     And finally sort on  KEY1,  using  Rows,  Text, Ascending.
  3038.     You will get:
  3039.  
  3040.     cat        black     3
  3041.     cat        yellow    1
  3042.     cat        yellow    2
  3043.     dog        brown     4
  3044.     fish       black     1
  3045.     fish       gold      1
  3046.  
  3047.  
  3048.                                                            65
  3049.  
  3050.  
  3051.     WORKQUBE COMMANDS
  3052.  
  3053.     The  /WorkQube  option  of  the main menu provides several
  3054.     commands which affect the contents and status of the entire
  3055.     WorkQube.    The  /WorkQube  commands  which are available
  3056.     are:
  3057.  
  3058.     Format  Width  Erase  Justify 
  3059.     Perspective  AutoCalc  Order  Color Title
  3060.  
  3061.     WORKQUBE FORMAT
  3062.  
  3063.     The /WorkQube Format command allows  you  to  set  the way
  3064.     numerical data (number or formula) entered into a cell will
  3065.     be displayed.  Numerical data means  either a  number or a
  3066.     formula (which  yields a  number).   This command does NOT
  3067.     affect any of the  cells  in  the  WorkQube  which already
  3068.     contain data.  It is used to determine what format should be
  3069.     used for  BLANK cells  which are  filled with  data in the
  3070.     future.  The available formats are Currency, Fixed, Percent,
  3071.     Scientific, Date, Time, General,  and  Hidden.    For more
  3072.     information on formats see the section titled CELL DISPLAY
  3073.     FORMATS.
  3074.  
  3075.  
  3076.  
  3077.     WORKQUBE WIDTH
  3078.  
  3079.     The  /WorkQube  Width  command  allows  you   to  set  the
  3080.     number of characters which will be displayed in future cells.
  3081.     This command does NOT  affect  any  of  the  cells  in the
  3082.     WorkQube  which  already  contain  data.    It  is used to
  3083.     determine what width should be used for BLANK  cells which
  3084.     are filled with data in the future.  The width of a cell may
  3085.     be any number in the range 1 to 75.   For more information
  3086.     on cell widths see the section titled CELL WIDTHS.
  3087.  
  3088.  
  3089.  
  3090.  
  3091.  
  3092.  
  3093.  
  3094.  
  3095.      66
  3096.  
  3097.  
  3098.  
  3099.     WORKQUBE ERASE
  3100.  
  3101.     The  /WorkQube  Erase  command  allows  you  to  erase the
  3102.     contents  of  every  cell  in  the  WorkQube  (clears  the
  3103.     WorkQube).    This  command  will  also  reset  all of the
  3104.     WorkQube settings to their defaults (print and graph blocks,
  3105.     macro definitions,  etc).  Because this command can have a
  3106.     drastic effect if you use it accidently, QubeCalc will prompt
  3107.     you first to make sure you really want to erase everything.
  3108.  
  3109.  
  3110.  
  3111.     WORKQUBE JUSTIFY
  3112.  
  3113.     The /WorkQube  Justify command  allows you  to set the way
  3114.     text strings entered into a cell will be displayed.  Text may
  3115.     be left justified, right justified, or centered in each cell.
  3116.     This command does NOT  affect  any  of  the  cells  in the
  3117.     WorkQube  which  already  contain  data.    It  is used to
  3118.     determine what justification should be used for BLANK cells
  3119.     which  are  filled  with  TEXT  in  the  future.  For more
  3120.     information on justification see the section titled ENTERING
  3121.     DATA INTO THE WORKQUBE (Text).
  3122.  
  3123.  
  3124.  
  3125.  
  3126.     WORKQUBE PERSPECTIVE
  3127.  
  3128.     QubeCalc allows you to look at (or enter) your data in any
  3129.     of the six possible perspectives (or faces) of the WorkQube.
  3130.     The six  faces are  named A thru F.  Face A is the face of
  3131.     the WorkQube  which  faces  you  when  you  first  boot up
  3132.     QubeCalc.
  3133.  
  3134.     Face A     - FRONT of the WorkQube.
  3135.     Face B     - RIGHT SIDE of the WorkQube.
  3136.     Face C     - TOP of the WorkQube.
  3137.     Face D     - BACK SIDE of the WorkQube.
  3138.     Face E     - LEFT SIDE of the WorkQube.
  3139.     Face F     - BOTTOM of the WorkQube.
  3140.  
  3141.  
  3142.                                                            67
  3143.  
  3144.  
  3145.     The current face letter is provided in the upper left corner
  3146.     in front of the  current cell  name (surrounded  by square
  3147.     brackets [] ).  The current orientation of the WorkQube may
  3148.     be changed using the /WorkQube Perspective  command.  This
  3149.     will in effect rotate your data so that you may view it from
  3150.     another perspective.
  3151.  
  3152.     For example, suppose you have the following spreadsheets in
  3153.     pages 1 through 3 of face A:
  3154.  
  3155.     PAGE 1 (FACE A)      PAGE 2 (FACE A)     PAGE3 (FACE A)
  3156.  
  3157.           A    B              A    B              A    B
  3158.     1     11   21        1    31   41        1    51   61
  3159.     2     12   22        2    32   42        2    52   62
  3160.     3     13   23        3    33   43        3    53   63
  3161.     4     14   24        4    34   44        4    54   64
  3162.  
  3163.     Every  cell  in  the  WorkQube  lies  directly  behind the
  3164.     corresponding cell on the previous page.  For example, cell
  3165.     B3 on  page 3 (named B3;3) lies directly behind cell B3 on
  3166.     page 2 (named B3;2), and cell B3;2 lies directly behind cell
  3167.     B3;1.
  3168.  
  3169.     Similarly,  each  column  and  row  in  the  WorkQube lies
  3170.     directly behind the  correponding  column  or  row  on the
  3171.     previous page.
  3172.  
  3173.     Now, suppose  you wanted  to compare  the values in column
  3174.     A of page 1 to the values in  column A  of pages  2 and 3.
  3175.     One  way  would  be  to  use  the  PgUp  and  PgDn keys to
  3176.     change  back  and  forth  between  pages.    The /WorkQube
  3177.     Perspective command  provides a much better way to do this
  3178.     however.
  3179.  
  3180.     Since the column A's are  right  next  to  each  other (in
  3181.     depth), it should be possible to display these columns next
  3182.     to each other on the screen.  This is done by rotating the
  3183.     WorkQube (to  face B  in this  case).  When you rotate the
  3184.     WorkQube, what were the "A" columns in pages  1, 2,  and 3
  3185.     of face A, become columns A, B, and C in page 1 of face B.
  3186.     And the "B" columns from pages  1,  2,  and  3  of  face A
  3187.     become columns A, B, and C in page 2 of face B.
  3188.  
  3189.      68
  3190.  
  3191.  
  3192.  
  3193.     PAGE 1 (FACE B)      PAGE 2 (FACE B)
  3194.  
  3195.           A    B    C              A    B    C
  3196.     1     11   31   51        1    21   41   61
  3197.     2     12   32   52        2    22   42   62
  3198.     3     13   33   53        3    23   43   63
  3199.     4     14   34   54        4    24   44   64
  3200.  
  3201.     For  more  information  on  rotating the WorkQube, see the
  3202.     section titled THE WORKQUBE.
  3203.  
  3204.     Sometimes you may find it desirable to transpose your data
  3205.     (swap rows  for columns).   Some  other spreadsheets allow
  3206.     you to transpose rows  and columns  which contain numbers,
  3207.     but can't transpose equations correctly.  QubeCalc provides
  3208.     the ability to  transpose  any  set  of  rows  and columns
  3209.     correctly.   All you need to do to transpose a set of rows
  3210.     and  columns  is  simply  use  the  /WorkQube  Perspective
  3211.     command and  switch your  perspective to the face opposite
  3212.     the one you are currently viewing!!!
  3213.  
  3214.  
  3215.  
  3216.     WORKQUBE AUTOCALC
  3217.  
  3218.     QubeCalc normally recalculates the  WorkQube automatically
  3219.     after any  cell value  is changed.  The /WorkQube AutoCalc
  3220.     command  allows  you   to   select   how   this  automatic
  3221.     recalculation feature  (AutoCalc) will operate.  The three
  3222.     AutoCalc options are:
  3223.  
  3224.     WorkQube  Off  Block  Iteration
  3225.  
  3226.     The WorkQube  option  causes  the  entire  WorkQube  to be
  3227.     recalculated each time a cell value is changed.
  3228.  
  3229.     The Off option causes the WorkQube to be recalculated only
  3230.     when the [F9] CALC key is pressed.
  3231.  
  3232.  
  3233.  
  3234.  
  3235.  
  3236.                                                            69
  3237.  
  3238.  
  3239.  
  3240.     The Block  option allows  you to  define a  block of cells
  3241.     which will be recalculated each time a cell value is changed.
  3242.     The cells in the defined block are the only cells which are
  3243.     recalculated, so if formulas in the block you define to be
  3244.     recalculated depend upon results from formulas  outside of
  3245.     the  block,  you  may  end  up with some erroneous (wrong)
  3246.     answers.
  3247.  
  3248.     The Iteration option allows  you  to  set  a recalculation
  3249.     interation count  so that QubeCalc will make more than one
  3250.     pass through the spreadsheet on each recalculation.
  3251.  
  3252.  
  3253.     The [F9] CALC key recalculates the  current AutoCalc block
  3254.     shown at  the bottom  of the  screen (even  if AutoCalc is
  3255.     turned off).
  3256.  
  3257.     The recalculation status (On/Off) and the recalculation block
  3258.     are always displayed at the bottom of the QubeCalc screen.
  3259.     If the entire WorkQube is to be recalculated  the block is
  3260.     displayed as A1;1..BL64;64.  The cells are recalculated in the
  3261.     order set by the /WorkQube Order command.
  3262.  
  3263.  
  3264.  
  3265.     WORKQUBE ORDER
  3266.  
  3267.     Because QubeCalc is a TRUE 3-D  spreadsheet there  are six
  3268.     (6) possible orders in which recalculation, datafilling, etc.
  3269.     may be performed.    The  /WorkQube  Order  command allows
  3270.     you to select any one of these possible orders, which are:
  3271.  
  3272.          A) Columns change fastest, then Rows, then Pages
  3273.          B) Pages change fastest, then Rows, then Columns
  3274.          C) Rows change fastest, then Pages, then Columns
  3275.          D) Rows change fastest, then Columns, then Pages
  3276.          E) Pages change fastest, then Columns, then Rows
  3277.          F) Columns change fastest, then Pages, then Rows
  3278.  
  3279.  
  3280.  
  3281.  
  3282.  
  3283.      70
  3284.  
  3285.  
  3286.  
  3287.     The default  order is  D.  This is the order that QubeCalc
  3288.     performs operations in when you first  start up.   You can
  3289.     find  out  what  the  current  order is with the [F7] STAT
  3290.     function key.  The  WorkQube  order  will  be  followed as
  3291.     above according to the perspective you are currently looking
  3292.     at.  The  order  is  used  when  performing  the following
  3293.     functions: recalculation, copying blocks of cells, graphing,
  3294.     and datafilling.
  3295.  
  3296.  
  3297.  
  3298.     WORKQUBE COLOR
  3299.  
  3300.     The /WorkQube Color command  simply  toggles  the QubeCalc
  3301.     display between color and black/white (if you have a color
  3302.     card installed).  Sometimes the contrast of black and white
  3303.     is preferable to the preset colors.
  3304.  
  3305.  
  3306.  
  3307.     WORKQUBE TITLE
  3308.  
  3309.     The /WorkQube  Title command  allows you to lock (or hold)
  3310.     title rows and columns on the screen.
  3311.  
  3312.     The /WorkQube Title  command  acts  as  a  toggle  to turn
  3313.     locking on and off. If you are in title lock mode, the letter
  3314.     "L" will be visible on the bottom line of the screen between
  3315.     the memory indication and the AutoCalc status.
  3316.  
  3317.     When you  turn title  locking on,  the rows above the cell
  3318.     pointer and the columns to the left of the cell pointer will
  3319.     be  locked  onto  the  screen.    You cannot move the cell
  3320.     pointer into rows and  columns which  have been  locked on
  3321.     the screen.  You also cannot move the cell pointer into any
  3322.     pages which lie below the page where you set title locking
  3323.     on.   The locked rows and columns will remain displayed on
  3324.     the screen  even when  you move  the cell  pointer off the
  3325.     right side or bottom of the screen.  Only the unlocked rows
  3326.     and columns will scroll.
  3327.  
  3328.  
  3329.  
  3330.                                                            71
  3331.  
  3332.  
  3333.  
  3334.     If you don't want to lock  rows, then  make sure  the cell
  3335.     pointer is in row 1 when you title lock.
  3336.  
  3337.     If you don't want to lock columns, then make sure the cell
  3338.     pointer is in column A when you title lock.
  3339.  
  3340.     If you don't want to lock pages, then  make sure  the cell
  3341.     pointer is in page 1 when you title lock.
  3342.  
  3343.     You can lock each of the 6 faces individually.
  3344.  
  3345.  
  3346.  
  3347.  
  3348.  
  3349.  
  3350.  
  3351.  
  3352.  
  3353.  
  3354.  
  3355.  
  3356.  
  3357.  
  3358.  
  3359.  
  3360.  
  3361.  
  3362.  
  3363.  
  3364.  
  3365.  
  3366.  
  3367.  
  3368.  
  3369.  
  3370.  
  3371.  
  3372.  
  3373.  
  3374.  
  3375.  
  3376.  
  3377.      72
  3378.  
  3379.  
  3380.     INSERTING ROWS, COLUMNS, OR PAGES
  3381.  
  3382.     The /Insert option of the main menu allows you to insert a
  3383.     blank row, column, or page into the WorkQube.
  3384.  
  3385.     When the /Insert Row command  is  selected  a  new  row is
  3386.     inserted at the point where the cell pointer is located and
  3387.     the rows at and below the cell pointer are shifted down to
  3388.     make  room  for  the  new  one.    The  bottom  row in the
  3389.     WorkQube is pushed off the end and is lost.
  3390.  
  3391.     When the /Insert Column command is  selected a  new column
  3392.     is inserted at the point where the cell pointer is located
  3393.     and the columns at and to the right of the cell pointer are
  3394.     shifted right to make room for the new one.  The rightmost
  3395.     column in the WorkQube is pushed off the end and is lost.
  3396.  
  3397.     When the /Insert Page  command is  selected a  new page is
  3398.     inserted at the point where the cell pointer is located and
  3399.     the pages at and behind the cell pointer are shifted out to
  3400.     make  room  for  the  new  one.    The  last  page  in the
  3401.     WorkQube is pushed off the end and is lost.
  3402.  
  3403.     All relative cell references in the WorkQube which point to
  3404.     a shifted  cell will be adjusted except for one exception.
  3405.     Relative references which point to a cell which is lost due
  3406.     to  being  pushed  off  the  end  of  the WorkQube are NOT
  3407.     adjusted to point  somewhere  off  in  HyperSpace.   These
  3408.     references will continue to point to the same cell location
  3409.     as if they were absolute references.
  3410.  
  3411.  
  3412.  
  3413.  
  3414.  
  3415.  
  3416.  
  3417.  
  3418.  
  3419.  
  3420.  
  3421.  
  3422.  
  3423.  
  3424.                                                            73
  3425.  
  3426.  
  3427.     DELETING ROWS, COLUMNS, OR PAGES
  3428.  
  3429.     The /Delete option of the main menu allows you to delete a
  3430.     row, column, or page from the WorkQube.
  3431.  
  3432.     When the  /Delete Row command is selected the row that the
  3433.     cell pointer is on is removed and the rows below  the cell
  3434.     pointer are  shifted up  to fill  in the deleted one.  The
  3435.     bottom row in the WorkQube is then filled with blank cells.
  3436.  
  3437.     When the /Delete Column  command  is  selected  the column
  3438.     that the  cell pointer is on is removed and the columns to
  3439.     the right of the cell pointer are shifted left to fill in the
  3440.     deleted one.   The  rightmost row  in the WorkQube is then
  3441.     filled with blank cells.
  3442.  
  3443.     When the /Delete Page  command is  selected the  page that
  3444.     the cell pointer is on is removed and the pages behind the
  3445.     cell pointer are shifted in to fill in the deleted one.  The
  3446.     last page in the WorkQube is then filled with blank cells.
  3447.  
  3448.     All relative cell references in the WorkQube which point to
  3449.     a shifted cell will be adjusted except for  one exception.
  3450.     Relative references which point to a cell which is deleted
  3451.     are NOT adjusted to  point  off  somewhere  in HyperSpace.
  3452.     These references  will continue  to point to the same cell
  3453.     location as if they were absolute references.
  3454.  
  3455.  
  3456.  
  3457.  
  3458.  
  3459.  
  3460.  
  3461.  
  3462.  
  3463.  
  3464.  
  3465.  
  3466.  
  3467.  
  3468.  
  3469.  
  3470.  
  3471.      74
  3472.  
  3473.  
  3474.     SAVING AND LOADING DATA FILES
  3475.  
  3476.     The /File option of the main menu provides several ways of
  3477.     saving and loading data to and from a disk file.  The file
  3478.     name must be a legal DOS  name  and  must  not  contain an
  3479.     extension.  QubeCalc automatically assigns a .QUB extension
  3480.     to all QubeCalc data files, so if you try to  add your own
  3481.     extension you  will get  either a  "File not  found" or an
  3482.     "Illegal file name" error.
  3483.  
  3484.     QubeCalc provides full path support.  This means  that you
  3485.     can  access  files  without  having to change directories.
  3486.     Simply type the full path name  when you  are asked  for a
  3487.     file name.  If you do not provide a full path name, the file
  3488.     will be written  to  (or  read  from)  the  current active
  3489.     directory which is shown on the top line of the screen.
  3490.  
  3491.     The /File commands which are available are:
  3492.  
  3493.     Load  Save  Combine  Extract  Directory  Files
  3494.  
  3495.     The /File  Save command  asks you  for a file name to save
  3496.     the WorkQube to, and  then writes  the data  to disk.   In
  3497.     addition to saving the data in the cells, QubeCalc will also
  3498.     save all the WorkQube settings, any Macro definitions, all
  3499.     the Print and Graph settings, and the current Face and cell
  3500.     pointer position.
  3501.  
  3502.     If the file name you provide is already being used  in the
  3503.     current directory,  you will  be asked whether you want to
  3504.     Backup the existing file or else Overwrite it.  If you select
  3505.     Backup, the  extension of the existing file's name will be
  3506.     changed from .QUB to .BAK and the new  file will  be saved
  3507.     with a .QUB extension.
  3508.  
  3509.  
  3510.  
  3511.     The /File  Extract command  is similar to the Save command
  3512.     except that it allows you to save a 3 dimensional block of
  3513.     cells  rather  than  the  entire WorkQube (it "EXTRACTS" a
  3514.     block of cells for saving).  You will be asked to define a
  3515.     block of cells to save.  The defined block may consist of a
  3516.     single cell, a  2  dimensional  range  of  cells,  or  a 3
  3517.  
  3518.                                                            75
  3519.  
  3520.  
  3521.     dimensional  block  of  cells.    The  block is defined as
  3522.     described in the section titled  DEFINING  A  3D  BLOCK OF
  3523.     CELLS.  QubeCalc will also save all the WorkQube settings,
  3524.     any Macro definitions, all the Print and Graph settings, and
  3525.     the current Face and cell pointer position.
  3526.  
  3527.  
  3528.  
  3529.     The /File  Load command asks you for a file to be read in,
  3530.     clears the WorkQube, and loads in the specified file.  In 
  3531.     addition to loading the data in the cells, QubeCalc will also
  3532.     load in  the WorkQube settings, any Macro definitions, all
  3533.     the Print and Graph settings, and the current Face and cell
  3534.     pointer position.  Since the /File Load command erases all
  3535.     the data in memory before it can load in a  new file, make
  3536.     sure  you  do  not  have  any unsaved data in the WorkQube
  3537.     when you use this command.
  3538.  
  3539.     QubeCalc provides a shortcut for the first file you want to
  3540.     load.  If you want to start up with a particular file, you
  3541.     may supply the file name on the command line and that file
  3542.     will be loaded when the program comes up.  For example, if
  3543.     you want to use a  file  named  TAXES.QUB,  then  type the
  3544.     following when you first run QubeCalc:
  3545.  
  3546.     QUBECALC TAXES
  3547.  
  3548.     You may  provide a  full pathname  for the file, otherwise
  3549.     QubeCalc will look for  the  file  in  either  the current
  3550.     directory, or  in the startup data directory you specified
  3551.     using the SETUP.COM program.
  3552.  
  3553.  
  3554.     The /File  Combine command  allows you  to combine several
  3555.     QubeCalc files into a single file.  QubeCalc asks you for a
  3556.     file to be read in, and loads the file without clearing the
  3557.     WorkQube.     Any  cells  which  were  originally  in  the
  3558.     WorkQube will remain  unchanged  after  the  /File Combine
  3559.     command unless  the new  file contains  data in those same
  3560.     cells.  Cells which are combined in that  contain NUMBERS,
  3561.     TEXT, or FORMULAS will overwrite existing cells, but cells
  3562.     which are  combined in  that are  BLANK will  not have any
  3563.     effect on existing cells.
  3564.  
  3565.      76
  3566.  
  3567.  
  3568.  
  3569.     All of the WorkQube settings, any Macro definitions, all the
  3570.     Print and Graph settings,  and the  current Face  and cell
  3571.     pointer position will remain the same and will NOT be read
  3572.     in from the new file.
  3573.  
  3574.  
  3575.  
  3576.     The  /File  Directory  command  allows  you  to  change to
  3577.     another directory  or drive.   You may enter either a full
  3578.     DOS  pathname  or  simply   a  subdirectory   name  to  be
  3579.     appended to  the current  directory.   For example, if the
  3580.     current directory is B:\dir1 then entering:
  3581.  
  3582.     C: switches to the active directory on the C: drive
  3583.     C:\ switches to the root directory on the C: drive
  3584.     C:\dir2 switches to dir2 on the C: drive
  3585.     dir2 switches to B:\dir1\dir2 (if dir2 exists)
  3586.     \ switches to B:\
  3587.  
  3588.  
  3589.  
  3590.     The /File Files command displays the files in  the current
  3591.     directory.  This command is similar to DOS's dir command.
  3592.  
  3593.     The file  listing command  prompts you for a file mask.  A
  3594.     file mask is a string which is used to determine which files
  3595.     to list.  If you enter a single filename as the mask, then
  3596.     only that file will be shown in the directory listing.  You
  3597.     may also use the wildcard characters * and ? (see your DOS
  3598.     manual for more information on wildcard  characters).  The
  3599.     default file mask is *.*, which provides a listing of all the
  3600.     files in the current directory.  If you only want to look at
  3601.     QubeCalc files then you can specify the mask as *.QUB.
  3602.  
  3603.     The /File Files command also lists any subdirectories which
  3604.     match the mask you provide.  Directories will be highlighted
  3605.     on the display.
  3606.  
  3607.     Hitting any  key after  the files have been displayed will
  3608.     return you to the WorkQube.
  3609.  
  3610.  
  3611.  
  3612.                                                            77
  3613.  
  3614.  
  3615.     PRINTING YOUR DATA
  3616.  
  3617.     The /Print option of the main menu allows  you to generate
  3618.     a print out of your data.  When you select the /Print option
  3619.     you will be presented with a  menu offering  the choice of
  3620.     printing to the Printer or to a File.  If you select the File
  3621.     option, QubeCalc will ask you for a file name to  use, and
  3622.     will send  the same  data to the file as it would normally
  3623.     send to the printer.  Sending data to a print file instead of
  3624.     to  the  printer  will  allow  you  to  read  your printed
  3625.     spreadsheet into your  word  processor  and  modify  it or
  3626.     merge it  into a  document.  The /Print commands which are
  3627.     available are:
  3628.  
  3629.     Block  Line  Page  Options  ResetBlock  Align  Go
  3630.  
  3631.     The /Print Block command lets you define the block of cells
  3632.     to be  printed.  The defined block may consist of a single
  3633.     cell, a 2 dimensional range of  cells, or  a 3 dimensional
  3634.     block of  cells.  The block is defined as described in the
  3635.     section titled DEFINING A 3D BLOCK OF CELLS.
  3636.  
  3637.     QubeCalc can print up to 240 characters on  one line.   If
  3638.     you define the Print block to be wider than 240 characters,
  3639.     then only the first  240 characters  of each  line will be
  3640.     printed.  QubeCalc will print as many characters per line as
  3641.     you define in the block (up to the 240 character maximum),
  3642.     so if  your printer can only print 80 characters on a line
  3643.     and the Print block you define is 100 characters wide, the
  3644.     extra 20  characters per  line will  still be sent to your
  3645.     printer (and will either wrap around onto the next line or
  3646.     will just be ignored by the printer).
  3647.  
  3648.     The  /Print  ResetBlock  command  releases (undefines) the
  3649.     block to be printed.
  3650.  
  3651.     The /Print Align command  tells QubeCalc  that the printer
  3652.     paper is  at the  top of  the page.   You  should use this
  3653.     command when  you  first  get  ready  to  print something.
  3654.     First, adjust the paper in the printer so that it is at the
  3655.     top of the page, then select this command.
  3656.  
  3657.  
  3658.  
  3659.      78
  3660.  
  3661.  
  3662.     The /Print Line command advances the printer a single line.
  3663.     You should  use this  command instead  of just turning the
  3664.     knob on the printer.    This  command  allows  QubeCalc to
  3665.     keep track of which line it is on.  If you manually adjust
  3666.     the printer (by turning the knob), then you will have to use
  3667.     the /Print Align command to tell QubeCalc where the top of
  3668.     the page is again.
  3669.  
  3670.     The /Print Page command advances the printer to the top of
  3671.     the next page.  You should use this command instead of just
  3672.     turning the knob on  the  printer.    This  command allows
  3673.     QubeCalc to  keep track  of which  line it  is on.  If you
  3674.     manually adjust the printer (by turning the knob), then you
  3675.     will have to use the /Print Align command to tell QubeCalc
  3676.     where the top of the page is again.
  3677.  
  3678.  
  3679.     The /Print Go command begins printing the defined block of
  3680.     cells.  You may print out your data in one of two formats:
  3681.     Contents (which prints the cell name and contents  of each
  3682.     cell, one  per line) or Display (which prints the block of
  3683.     cells as they would be displayed on the screen).
  3684.  
  3685.     The Display format is the one you normally want to use.  It
  3686.     displays your  data in  the formats and positions you have
  3687.     selected.
  3688.  
  3689.     The Contents format is useful for  debugging a spreadsheet
  3690.     since it prints out the actual formulas instead of the values
  3691.     of the formulas.
  3692.  
  3693.     If no Print block has been defined (using the /Print Block
  3694.     command)  then  the  /Print  Go  command  will  simply  be
  3695.     ignored.
  3696.  
  3697.     Before any of your data is actually sent to the printer, the
  3698.     Setup string  will be  sent to  allow you to initialize or
  3699.     change the settings on your printer  (the Setup  string is
  3700.     described below).
  3701.  
  3702.  
  3703.  
  3704.  
  3705.  
  3706.                                                            79
  3707.  
  3708.  
  3709.     The /Print  Options command allows you to change the print
  3710.     margins, page length, and Setup string.
  3711.  
  3712.     Setup  Left  Top  Bottom  PageLength
  3713.  
  3714.     The Setup string is a sequence of characters which is sent
  3715.     to the printer each time the /Print Go command is selected
  3716.     (before the actual data is sent).  You may set this string to
  3717.     anything you  wish.   It is generally used to send control
  3718.     sequences to the printer to select printer options (italics or
  3719.     compressed print for example).  To send a control character
  3720.     to the printer simply place a slash character / followed by
  3721.     the three  digit ASCII  code (in  decimal) for the control
  3722.     character into the Setup string.
  3723.  
  3724.     EXAMPLE:  Since  the  ASCII  value  (in  decimal)  for the
  3725.     escape character  is 27,  you would  use a setup string of
  3726.     /027E to send an  ESC  E  to  the  printer  (this sequence
  3727.     selects emphasized print on an EPSON printer).
  3728.  
  3729.     Printer settings selected using the Setup string will remain
  3730.     in effect until the setting is reset using the Setup string or
  3731.     until the printer is turned off.
  3732.  
  3733.     The Left margin option lets you select how many characters
  3734.     from the left edge you wish to begin printing.  If you set
  3735.     Left to  5 then QubeCalc will space over 5 characters from
  3736.     the left edge of the page  before it  begins printing your
  3737.     data.
  3738.  
  3739.     The Top  and Bottom margin options let you select how many
  3740.     blank lines you want at the top and bottom of the page.  If
  3741.     Top is  set to 3 then QubeCalc will not print in the top 3
  3742.     lines of any page (the printing will start on the fourth line
  3743.     of every  page).  If Bottom is set to 2 then QubeCalc will
  3744.     not print in the bottom 2 lines of any page (QubeCalc will
  3745.     automatically advance the paper to the next page before it
  3746.     resumes printing).
  3747.  
  3748.     The PageLength  option lets  you select  how many physical
  3749.     lines are  on a page (on 8 1/2" x 11" paper at 6 lines per
  3750.     inch there are 66 lines).  QubeCalc needs this information
  3751.     so that it can keep track of where it is on the page.
  3752.  
  3753.      80
  3754.  
  3755.  
  3756.     GRAPHING YOUR DATA
  3757.  
  3758.     The /Graph  option of  the main menu provides you with the
  3759.     ability to create graphs representing blocks of your data.
  3760.     The  order  in  which  the  cells  are graphed follows the
  3761.     /WorkQube Order  setting.    If  you  have  a GRAPHICS.COM
  3762.     driver  which  works  with  your  particular printer, then
  3763.     loading it before you run QubeCalc will allow you to print
  3764.     your graphs to a printer by simply typing Shift-PrtSc.  The
  3765.     /Graph commands which are available are:
  3766.  
  3767.     Type  X  A  B  C  Options  ResetBlock  View
  3768.  
  3769.     The /Graph Type command lets you select the  type of graph
  3770.     to be displayed.  Your data may be graphed using either Bar
  3771.     graphs or Line graphs.  Line graphs  can be  plotted using
  3772.     lines, symbols, or both.  If you ask for symbols to be drawn
  3773.     then one symbol will be placed on the graph for every data
  3774.     value.
  3775.  
  3776.     QubeCalc can  display up to 3 separate sets (or blocks) of
  3777.     data on the same graph.  The /Graph  A, B,  and C commands
  3778.     let you define the blocks containing the data to be graphed.
  3779.     The defined block  may  consist  of  a  single  cell,  a 2
  3780.     dimensional range of cells, or a 3 dimensional block of cells.
  3781.     The block is defined  as described  in the  section titled
  3782.     DEFINING A 3D BLOCK OF CELLS.
  3783.  
  3784.     The values  in each  block will be graphed in the WorkQube
  3785.     order.  This means that you may change the order  that the
  3786.     cells are  graphed in  by either using the /WorkQube Order
  3787.     command or by changing to another face to  graph the data.
  3788.     Any cells  in the  block which  are BLANK or which contain
  3789.     TEXT will be treated as having a value of zero.
  3790.  
  3791.     The /Graph X  command  lets  you  select  the  block which
  3792.     contains the  items to  be placed along the X axis.  These
  3793.     "items"  may  be  TEXT  or  numerical   data  (NUMBERS  or
  3794.     FORMULAS).     Since  the  X  axis  may  become  a  little
  3795.     overcrowded with too many  "items", QubeCalc  provides the
  3796.     Spacing option (see /Graph Options) to help you avoid some
  3797.     of this clutter.
  3798.  
  3799.  
  3800.                                                            81
  3801.  
  3802.  
  3803.     The /Graph  ResetBlock  command  releases  (undefines) any
  3804.     one or all of the blocks to be graphed (A, B, C, X).
  3805.  
  3806.     The  /Graph  View  command  displays  the  defined  blocks
  3807.     graphically using the settings selected with  the TYPE and
  3808.     OPTIONS  commands.    The  graph  will remain displayed on
  3809.     your screen until you press a key.  Once a  key is pressed
  3810.     QubeCalc will  return to  the WorkQube  display.  QubeCalc
  3811.     will still be in the /Graph menu so that you  may make any
  3812.     adjustments or additions you want.
  3813.  
  3814.     The  [F10]  GRAPH  function  key  can be used to display a
  3815.     graph using the current graph settings  and blocks.   This
  3816.     function works  just like  the /Graph  View command except
  3817.     that it works only when you are in the regular  data entry
  3818.     mode (instead  of from  the command menus).  This function
  3819.     is useful because  it  allows  you  to  change  data  in a
  3820.     previously defined Graph block and display a graph of that
  3821.     data by just hitting a single key.
  3822.  
  3823.     The  /Graph  Options  command  lets  you   change  various
  3824.     display features of the graph to be drawn.  You may change
  3825.     the title, the X and Y axis labels, the data legends, the Y
  3826.     axis format, and the spacing of the values along the X axis.
  3827.  
  3828.     A Title  may be  provided which  describes the  graph as a
  3829.     whole.  This title is placed over the top of the graph if it
  3830.     is provided.
  3831.  
  3832.     Labels which  describe the  X and  Y axes  may be provided
  3833.     and will be placed along the X and Y axes if provided.
  3834.  
  3835.     A separate Legend may be provided for each  of the  3 data
  3836.     blocks (A,  B, and  C).  The Legend is a short text string
  3837.     which tells a little bit about the data block (like why it is
  3838.     different from the other data blocks).
  3839.  
  3840.     The Format  option lets  you format the values along the Y
  3841.     axis using any  of  QubeCalc's  standard  formats.   These
  3842.     formats include Currency, Fixed, Percent, Scientific, Date,
  3843.     and Time.  See the  section  titled  CELL  DISPLAY FORMATS
  3844.     for more information on these formats.
  3845.  
  3846.  
  3847.      82
  3848.  
  3849.  
  3850.     The Spacing option lets you decide how to space the values
  3851.     along the X axis.  If SPACING=1 then every value  from the
  3852.     X block  will be  placed along  the X  axis.  If SPACING=3
  3853.     then every third value from  the  X  block  will  be used.
  3854.     SPACING can range anywhere between 1 and 240.
  3855.  
  3856.  
  3857.  
  3858.  
  3859.  
  3860.  
  3861.  
  3862.  
  3863.  
  3864.  
  3865.  
  3866.  
  3867.  
  3868.  
  3869.  
  3870.  
  3871.  
  3872.  
  3873.  
  3874.  
  3875.  
  3876.  
  3877.  
  3878.  
  3879.  
  3880.  
  3881.  
  3882.  
  3883.  
  3884.  
  3885.  
  3886.  
  3887.  
  3888.  
  3889.  
  3890.  
  3891.  
  3892.  
  3893.  
  3894.                                                            83
  3895.  
  3896.  
  3897.     DEFINING AND USING MACROS
  3898.  
  3899.     QubeCalc  allows  you  to  assign multiple keystrokes (and
  3900.     commands) to a single key.   This group  of keystrokes (or
  3901.     commands) is  known as  a "Macro".   Macros  provide a way
  3902.     to create shortcuts for long sequences of keystrokes.  They
  3903.     are also useful for automating repetitive commands.  There
  3904.     are 3 steps involved in using a macro:
  3905.  
  3906.     - Creating the macro.
  3907.     - Defining the macro.
  3908.     - Running the macro.
  3909.  
  3910.     A macro is created by simply typing the  desired keystroke
  3911.     sequence  as  text  entries  into consecutive cells down a
  3912.     column (you may have to start each cell with a ' character
  3913.     to make it a text entry).  When the macro is run, QubeCalc
  3914.     will read the keystrokes out  of  these  cells  instead of
  3915.     waiting for you to type them in from the keyboard.  If you
  3916.     have more keystrokes for a macro than will fit in a single
  3917.     cell, you  can continue  them in the next cell down in the
  3918.     column.
  3919.  
  3920.     When creating a macro  you  may  generally  just  type the
  3921.     desired keystrokes into the cell.  In the case of Function
  3922.     Keys, cursor movement keys, and a few other special keys it
  3923.     is necessary  to type  the name of the key CAPITALIZED and
  3924.     enclosed in square brackets [].   Below is  a list  of the
  3925.     available special keys.
  3926.  
  3927.  
  3928.  
  3929.  
  3930.  
  3931.  
  3932.  
  3933.  
  3934.  
  3935.  
  3936.  
  3937.  
  3938.  
  3939.  
  3940.  
  3941.      84
  3942.  
  3943.  
  3944.     [UP]       Up Arrow            [INS]     Insert Key
  3945.     [DOWN]     Down Arrow          [DEL]     Delete Key
  3946.     [LEFT]     Left Arrow          [EDIT]    Edit Key (F2)
  3947.     [RIGHT]    Right Arrow         [BLOCK]   Block Key (F3)
  3948.     [HOME]     Home Key            [ABS]     Abs/Rel Key (F4)
  3949.     [END]      End Key             [GOTO]    Goto Key (F5)
  3950.     [PGUP]     PgUp Key            [FIND]    Find Key (F6)
  3951.     [PGDN]     PgDn Key            [STAT]    Status Key (F7)
  3952.     [RET]      Return Key          [CALC]    Recalc Key (F9)
  3953.     [ESC]      Escape Key          [GRAPH]   Graph Key (F10)
  3954.     [SLEFT]    Screen Left         [ERASE]   Erase Line
  3955.     [SUP]      Screen Up           [BEEP]    Creates a beep
  3956.     [SDOWN]    Screen Down         [BS]      BackSpace
  3957.     [SRGHT]    Screen Right
  3958.  
  3959.     Once the  macro has been created in this manner it must be
  3960.     defined using the [F8] MACRO function  key.   Defining the
  3961.     macro tells  QubeCalc two things.  First, it lets you tell
  3962.     QubeCalc which key you want to  assign your  macro to, and
  3963.     second, it  lets QubeCalc  know which axis your macro will
  3964.     follow if it is more than one cell long.   Therefore, NOTE
  3965.     that  the  macro  MUST  be  defined ([F8] key) IN THE FACE
  3966.     where the macro APPEARS as a column!!
  3967.  
  3968.     Pressing  the  [F8]  MACRO  key  will  pop  up  the  macro
  3969.     selection  window  to  ask  whether  you want to define or
  3970.     undefine a macro.  You will  then be  asked to  select the
  3971.     letter to assign the macro to (or to undefine).  Finally, you
  3972.     will be asked to define the beginning cell where your macro
  3973.     resides.
  3974.  
  3975.     The macro  is then  run simply by holding down the Alt key
  3976.     and pressing  the macro's  letter.   You can  halt a Macro
  3977.     while it is running by hitting the ESC key.
  3978.  
  3979.  
  3980.  
  3981.  
  3982.  
  3983.  
  3984.  
  3985.  
  3986.  
  3987.  
  3988.                                                            85
  3989.  
  3990.  
  3991.     Suppose  you  wanted  to  write a simple macro which would
  3992.     let you change the  format of  a cell  to CURRENCY  (and 2
  3993.     digits after  the decimal  point) with a single keystroke.
  3994.     Since the sequence of  commands to  perform this operation
  3995.     is  /Cell  Format  Currency  2  <return key> NoCommas, the
  3996.     sequence of keystrokes needed to perform this operation is:
  3997.  
  3998.     /CFC2[RET]N
  3999.  
  4000.     where [RET] is the special sequence QubeCalc uses  for the
  4001.     return key.   You would create this macro by simply typing
  4002.     '/CFC2[RET]N into one of QubeCalc's cells.  Make  sure you
  4003.     type the  quote ' first, or else QubeCalc will think the /
  4004.     that you type means  you  want  the  command  menu  to pop
  4005.     up.
  4006.  
  4007.     Once you  have created the macro in this manner, you would
  4008.     press the [F8] MACRO  key, and  select Define.   You would
  4009.     then type in the letter to assign the macro to (let's say m
  4010.     for money) and hit return.  QubeCalc would  then return to
  4011.     the data screen and ask you to position the cell 
  4012.     pointer on the starting cell of the macro.  So just position
  4013.     the cell pointer, hit return, and your macro is ready to fly.
  4014.     From now  on, whenever  you want  to change  the format of
  4015.     the current  cell to Currency, just type Alt-m and it's as
  4016.     good as done.
  4017.  
  4018.     In addition to the regular menu commands, there are 4 menu
  4019.     commands  available  only  during  macro execution.  These
  4020.     commands are selected in the same  manner as  regular menu
  4021.     commands (use  the / key, choose the Macro [M] option, and
  4022.     one of the  4  suboptions  [I,G,?,Q]).    The  I,G,  and ?
  4023.     suboptions require an additional argument.
  4024.  
  4025.     /MGcellname[RET]
  4026.     The Macro will start reading keystrokes from the specified
  4027.     cell instead of continuing where it's at.  This command is
  4028.     very  useful  for  creating  macros  that loop and perform
  4029.     repetitive commands.
  4030.  
  4031.  
  4032.  
  4033.  
  4034.  
  4035.      86
  4036.  
  4037.  
  4038.  
  4039.     /MIequation[RET]
  4040.     If the equation evaluates true (if it is not equal to zero)
  4041.     the Macro  will continue  reading keystrokes from the same
  4042.     cell, otherwise the Macro will begin reading keystrokes from
  4043.     the next  cell down the column.  This command provides you
  4044.     with conditional control and is useful for controlling loops
  4045.     created with the /mg command.
  4046.  
  4047.     /M?prompt[RET]
  4048.     This command  temporarily pauses and allows you to enter a
  4049.     line of data (a  NUMBER,  FORMULA,  or  TEXT).    Any text
  4050.     that  you  enter  between  the  ?  and  the  [RET] will be
  4051.     displayed on the control line as a prompt.  After you have
  4052.     entered this data (finishing with the return key) the data
  4053.     will be entered into the current  cell and  the macro will
  4054.     resume where it left off.
  4055.  
  4056.     For  example,  if  the  following line is encountered in a
  4057.     macro:
  4058.  
  4059.       /m?What is your name?[RET]
  4060.  
  4061.     then the macro will pause, and prompt you with:
  4062.  
  4063.       What is your name?
  4064.  
  4065.     and will wait for you to enter a response.   Your response
  4066.     will then be placed in the current cell.
  4067.  
  4068.  
  4069.     /MQ
  4070.     The macro is halted and control is return to you.
  4071.  
  4072.     NOTE:   Macros should  be defined  in the  Face where they
  4073.     will be used.  Some macros will work fine in any face, but
  4074.     macros which  make use of cell addresses (in /MG commands,
  4075.     [GOTO] commands, etc.) will really  screw  up  if  you use
  4076.     them in  a face  other than  the one they were defined in.
  4077.     (Remember, the  cell named  B10;4 in  face A  is not named
  4078.     B10;4 when it is viewed from other faces!)
  4079.  
  4080.  
  4081.  
  4082.                                                            87
  4083.  
  4084.  
  4085.     EXAMPLE MACRO:
  4086.     This macro provides a short example using the four special
  4087.     macro menu commands.  It is a simple  version of  a "guess
  4088.     the number"  game, but  its main purpose is simply to give
  4089.     you an idea of how you might use these commands.  
  4090.  
  4091.     The top line of this macro would be placed in cell A1;1, and
  4092.     the other 8 lines would be placed in cells down the column
  4093.     (since these lines are TEXT they would really have a quote
  4094.     ' in front of them).  This macro also illustrates the use of
  4095.     the @CELL function.
  4096.  
  4097.     A1;1:   [END]=@INT(1000*@RAND)[RET]
  4098.     A2;1:   /wao
  4099.     A3;1:   [GOTO]Z26;1[RET]
  4100.     A4;1:   /ce
  4101.     A5;1:   /m?Guess a number between 0 and 1000:[RET]
  4102.     A6;1:   /mi@CELL=BL64;1[RET]GOOD JOB![RET]/waw/mq
  4103.     A7;1:   /mi@CELL>BL64;1[RET]TOO HIGH[RET]/mgA5;1[RET]
  4104.     A8;1:   TOO LOW[RET]/mgA5;1[RET]
  4105.  
  4106.  
  4107.     [END]=@INT(1000*@RAND)[RET]
  4108.     The purpose of the first line of this macro is  to place a
  4109.     random number  between 0 and 1000 in the bottom right cell
  4110.     (BL64;1) in the WorkQube.  The [END] key  is used  to move
  4111.     the  cell  pointer  to  cell  BL64;1, and then the formula
  4112.     =@INT(1000*@RAND) is entered into that cell.  This formula
  4113.     generates a random number between 0 and 1000.
  4114.  
  4115.     /wao
  4116.     The  next  line  of  this  simply  executes the /WorkSheet
  4117.     AutoCalc  Off  command  to   prevent   the   formula  (and
  4118.     therefore the  random number) in cell BL64;1 from changing
  4119.     during the  macro  (you  would  really  have  a  hard time
  4120.     guessing a changing number).
  4121.  
  4122.  
  4123.  
  4124.  
  4125.  
  4126.  
  4127.  
  4128.  
  4129.      88
  4130.  
  4131.  
  4132.  
  4133.     [GOTO]Z26;1[RET] and /ce
  4134.     The  third  and  fourth  lines  of the macro move the cell
  4135.     pointer to cell Z26;1 and uses the /Cell  Erase command to
  4136.     erase the contents of that cell.  Cell Z26;1 is where your
  4137.     guesses will be entered.
  4138.  
  4139.     /m?Guess a number between 0 and 1000:[RET]
  4140.     This next line is  where  the  actual  work  of  the macro
  4141.     begins.   The /Macro ? command is used to ask you to enter
  4142.     a number between 0 and 1000.  This command will  cause the
  4143.     macro  to  pause  until  you  enter your guess and hit the
  4144.     return key.  The number you enter will be placed  into the
  4145.     current cell (which happens to be Z26;1).
  4146.  
  4147.     /mi@CELL=BL64;1[RET]GOOD JOB![RET]/waw/mq
  4148.     This line  uses the  /Macro If  command to check to see if
  4149.     the value of the current  cell  (Z26;1)  is  EQUAL  to the
  4150.     random number  in BL64;1.   If  it is, then the processing
  4151.     continues in the same cell, and the phrase  "GOOD JOB!" in
  4152.     placed  in  cell  Z26;1, the /WorkSheet AutoCalc WorkSheet
  4153.     command is used to turn AutoCalc  back on,  and the /Macro
  4154.     Quit command is used to end the macro.  If the value is not
  4155.     EQUAL  to  the  random  number  then  the  macro continues
  4156.     with the next cell instead of writing "GOOD JOB!".
  4157.  
  4158.     /mi@CELL>BL64;1[RET]TOO HIGH[RET]/mgA5;1[RET]
  4159.     This line checks to see if the value of the current cell is
  4160.     GREATER than the random number in BL64;1.  If it  is, then
  4161.     the  phrase  "TOO  HIGH"  is  placed in cell Z26;1 and the
  4162.     /Macro Goto command is used  to  make  the  macro continue
  4163.     from cell A5;1 (where you are asked to guess again).  If the
  4164.     value is NOT GREATER  than  the  random  number,  then the
  4165.     macro continues with the next cell instead of writing "TOO
  4166.     HIGH".
  4167.  
  4168.     TOO LOW[RET]/mgA5;1[RET]
  4169.     If the value of the current cell is  LESS than  the random
  4170.     number in cell BL64;1 then this line will be reached and the
  4171.     phrase "TOO LOW" will be  placed  in  cell  Z26;1  and the
  4172.     /Macro  Goto  command  will  cause  the  macro to continue
  4173.     from cell A5;1 (where you are asked to guess again).
  4174.  
  4175.  
  4176.                                                            89
  4177.  
  4178.  
  4179.     EXITING FROM QUBECALC
  4180.  
  4181.     The /Quit option of the main  menu  is  used  to  exit the
  4182.     program.   When you  select this command you will be asked
  4183.     whether you really want to exit or not.   This  is because
  4184.     your data is not automatically saved when you exit.  If you
  4185.     haven't saved your data yet you should select NO, save your
  4186.     data using  the /File  Save (or Extract) command, and then
  4187.     exit.
  4188.  
  4189.  
  4190.  
  4191.  
  4192.  
  4193.  
  4194.  
  4195.  
  4196.  
  4197.  
  4198.  
  4199.  
  4200.  
  4201.  
  4202.  
  4203.  
  4204.  
  4205.  
  4206.  
  4207.  
  4208.  
  4209.  
  4210.  
  4211.  
  4212.  
  4213.  
  4214.  
  4215.  
  4216.  
  4217.  
  4218.  
  4219.  
  4220.  
  4221.  
  4222.  
  4223.      90
  4224.  
  4225.  
  4226.     THE LOTUS IMPORT PROGRAM
  4227.  
  4228.     An import program is included to let you import 1-2-3 files
  4229.     into  QubeCalc.    This  import program (named GET123.COM)
  4230.     can import multiple 1-2-3 files into  a WorkQube.   GET123
  4231.     reads in one page of data at a time (64 columns by 64 rows)
  4232.     from the 1-2-3 file, and places the data into Face A of the
  4233.     WorkQube.   An output file is created which is in the .QUB
  4234.     format and which may be loaded into QubeCalc.
  4235.  
  4236.     Simply type GET123 at the  DOS  prompt  when  you  wish to
  4237.     import 1-2-3  data.   GET123 will  ask you for the name of
  4238.     the Lotus file you want to import.  You may enter any valid
  4239.     Lotus filename (and path) including either the .WKS or .WK1
  4240.     extension.  Hitting the escape key at this time will allow
  4241.     you to exit GET123 without importing the file.
  4242.  
  4243.     After you  have entered  a file  name, you  must enter the
  4244.     page number in  the  WorkQube  which  you  want  the Lotus
  4245.     data read  into.   This page number must be in the range 1
  4246.     to 64.
  4247.  
  4248.     GET123 will then begin to import the 64  column by  64 row
  4249.     range of cells which begin with cell A1.  This range of cells
  4250.     will be placed into the QubeCalc page which  you specified
  4251.     earlier.
  4252.  
  4253.     You  will  then  be  asked  whether you want to import any
  4254.     more Lotus data.  If you select YES, then GET123 will once
  4255.     again ask  you for  a file name and a page number.  If you
  4256.     select NO, then GET123 will create a QubeCalc  (.QUB) file
  4257.     containing  the  data  you  have  imported  so  far.   The
  4258.     QubeCalc file will have the same name as the last Lotus file
  4259.     you  provided  (except  that  the  extension  will be .QUB
  4260.     instead of .WKS or .WK1).   If  the  output  file  name is
  4261.     already being used the existing file will be backed up before
  4262.     the new one is written.
  4263.  
  4264.     If you  import two  1-2-3 files  which each  have a common
  4265.     range name  defined into the same WorkQube, only the range
  4266.     name from the last 1-2-3 file loaded will be used.
  4267.  
  4268.  
  4269.  
  4270.                                                            91
  4271.  
  4272.  
  4273.     IMPORTING DIF AND DBASE FILES
  4274.  
  4275.     QubeCalc also provides the ability to import DIF, dBASE II,
  4276.     and dBASE III files.  This is done using the program named
  4277.     IMPORT.COM.    IMPORT  requires   you   to   supply  three
  4278.     command line  arguments.  To run IMPORT, type the follwing
  4279.     at the DOS prompt:
  4280.  
  4281.     IMPORT filetype filename pagenumber
  4282.  
  4283.     where filetype is one of the following:
  4284.  
  4285.      DIF - DIF file
  4286.      DB2 - dBase II file
  4287.      DB3 - dBase III file
  4288.  
  4289.     and filename is the name of the file you want to import (do
  4290.     not add the .DIF or .DBF extension).
  4291.  
  4292.     and pagenumber  is the  page in the WorkQube to import the
  4293.     file into.  The page number must be in the range 1 to 64.
  4294.  
  4295.     For example, if you want to  import TAXES.DIF  into page 1
  4296.     of a QubeCalc spreadsheet, then you would type:
  4297.  
  4298.     IMPORT DIF TAXES 1
  4299.  
  4300.     If there are more than 64 records in the file which you are
  4301.     importing, they are placed in the pages following  the one
  4302.     you are importing into.
  4303.  
  4304.     IMPORT  will  read  the  DIF  or dBASE file, and will then
  4305.     generate a QubeCalc file which contains the data from that
  4306.     file.  If you wish to import multiple DIF or dBASE files into
  4307.     a single  WorkQube,  then  you  must  import  each  DIF or
  4308.     dBASE   file   into   separate  WorkQubes,  and  then  use
  4309.     QubeCalc's /File  Combine  command  to  create  the single
  4310.     WorkQube.
  4311.  
  4312.  
  4313.  
  4314.  
  4315.  
  4316.  
  4317.      92
  4318.  
  4319.  
  4320.     EXPORTING DIF, DBASE, AND LOTUS FILES
  4321.  
  4322.     QubeCalc provides  the ability to export WorkQube pages to
  4323.     Lotus 1-2-3, DIF, dBASE II, and dBASE III files.   This is
  4324.     done   using   the   program  named  EXPORT.COM.    EXPORT
  4325.     requires you to supply three command  line arguments.   To
  4326.     run EXPORT, type the follwing at the DOS prompt:
  4327.  
  4328.     EXPORT filetype filename pagenumber
  4329.  
  4330.     where filetype is one of the following:
  4331.  
  4332.      WKS - Lotus 1-2-3 R1 file
  4333.      WK1 - Lotus 1-2-3 R2 file
  4334.      DIF - DIF file
  4335.      DB2 - dBase II file
  4336.      DB3 - dBase III file
  4337.  
  4338.     and filename  is the name of the Lotus, dBASE, or DIF file
  4339.     you want to export (do not  include the  .WKS, .WK1, .DBF,
  4340.     or .DIF extension).
  4341.  
  4342.     and pagenumber  is the  page in  the WorkQube  you want to
  4343.     export to the Lotus, dBASE, or DIF format.
  4344.  
  4345.     EXPORT will then read  the selected  page in  the QubeCalc
  4346.     file, and  will then  generate a Lotus, dBASE, or DIF file
  4347.     which contains the data from that file.
  4348.  
  4349.  
  4350.  
  4351.  
  4352.  
  4353.  
  4354.  
  4355.  
  4356.  
  4357.  
  4358.  
  4359.  
  4360.  
  4361.  
  4362.  
  4363.  
  4364.                                                            93
  4365.  
  4366.  
  4367.     Lotus specifics:
  4368.  
  4369.     When EXPORT encounters a  formula which  references a cell
  4370.     on another page, that cell will be exported as a numerical
  4371.     value (since Lotus has no concept of "pages".  
  4372.  
  4373.  
  4374.     dBASE specifics:
  4375.  
  4376.     If you export to  a  dBASE  II  or  dBASE  III  file, then
  4377.     EXPORT will  use the  top row containing data as the field
  4378.     names for the data  to be  exported.   The widths  of each
  4379.     column will  be used as the field width in the dBASE file.
  4380.     For example, using the spreadsheet below:
  4381.  
  4382.           A         B         C         D
  4383.     1
  4384.     2     NAME      CITY      ZIP
  4385.     3     Bill      Sandy     84091
  4386.     4     Sam       New York  10016
  4387.     5     Joe       San Jose  95121
  4388.     6
  4389.  
  4390.     NAME, CITY, and ZIP will be  used as  the field  names for
  4391.     the data in their columns.
  4392.  
  4393.     EXPORT will step through each field name, and will ask you
  4394.     whether each field is a (C)HARACTER or (N)UMBER field.
  4395.  
  4396.  
  4397.  
  4398.  
  4399.  
  4400.  
  4401.  
  4402.  
  4403.  
  4404.  
  4405.  
  4406.  
  4407.  
  4408.  
  4409.  
  4410.  
  4411.      94
  4412.  
  4413.  
  4414.  
  4415.  
  4416.     ERROR MESSAGES
  4417.  
  4418.     There are several error  messages which  you may encounter
  4419.     when  using  QubeCalc.    These  error messages are listed
  4420.     below along with a description of what the  error messages
  4421.     are trying to tell you.
  4422.  
  4423.  
  4424.     Invalid File
  4425.     This error message means that QubeCalc could not correctly
  4426.     read in the data file you asked for.  The file is either NOT
  4427.     a QubeCalc file or it has been corrupted.
  4428.  
  4429.     Bad GOTO In Macro
  4430.     This  error  message  means  that  you  used a /Macro Goto
  4431.     command in a macro  but provided  an invalid  cell name to
  4432.     continue reading  keystrokes from.   The  cell name should
  4433.     NOT begin with a "$".  This character should only be added
  4434.     to a  cell name  when it is being used as a reference in a
  4435.     formula.
  4436.  
  4437.     Bad IF Equation in Macro
  4438.     This  error  message  means  that  you  used  a  /Macro If
  4439.     command  in  a  macro  but provided an invalid equation to
  4440.     evaluate.   Make sure  that the  equation does  NOT have a
  4441.     leading equal sign.  Remember that all function names have
  4442.     to be CAPITALIZED.
  4443.  
  4444.     Critical Error... Drive Ready?
  4445.     This  error  message  means  that  DOS  has  encountered a
  4446.     critical error which prevents it from continuing.  This error
  4447.     can occur for any of the following reasons:
  4448.       - Drive not ready (no disk, or the drive door is open).
  4449.       - Printer out of paper.
  4450.       - Write protect error.
  4451.       - Disk screwed up.
  4452.  
  4453.  
  4454.  
  4455.  
  4456.  
  4457.  
  4458.                                                            95
  4459.  
  4460.  
  4461.  
  4462.     Defined Block Too Large
  4463.     This error  message means  that the  one of  the blocks of
  4464.     cells you have defined for graphing contains more than 1000
  4465.     cells.  (The graphics screen doesn't have enough resolution
  4466.     to show that many values, anyways).
  4467.  
  4468.     Error While Writing Print File
  4469.     This error  message means that QubeCalc could not properly
  4470.     write your file out to disk  for some  reason.   There are
  4471.     several problems which may have been encountered:
  4472.       - The disk is write protected.
  4473.       - There is not enough room on the disk for the file.
  4474.       - There is no disk in the drive.
  4475.       - The drive door is open.
  4476.  
  4477.     Error Writing File To Disk
  4478.     This error  message means that QubeCalc could not properly
  4479.     write your file out to disk  for some  reason.   There are
  4480.     several problems which may have been encountered:
  4481.       - The disk is write protected.
  4482.       - There is not enough room on the disk for the file.
  4483.       - There is no disk in the drive.
  4484.       - The drive door is open.
  4485.  
  4486.     File Not Found
  4487.     This error  message means that QubeCalc could not find the
  4488.     data file which you asked for.  The file either doesn't exist
  4489.     or it might be in another directory.  You can use the /File
  4490.     Files  command  to  see  what  files  are  in  the current
  4491.     directory.    The  /File  Directory command can be used to
  4492.     change to another directory to search for the file.
  4493.  
  4494.  
  4495.  
  4496.  
  4497.  
  4498.  
  4499.  
  4500.  
  4501.  
  4502.  
  4503.  
  4504.  
  4505.      96
  4506.  
  4507.  
  4508.  
  4509.     Help File Not Found
  4510.     This error message means that QubeCalc could not  find the
  4511.     help file (QUBECALC.HLP).  QubeCalc will look for its help
  4512.     file in the directory you were in when you started QubeCalc
  4513.     (unless you specify otherwise using the setup program).
  4514.  
  4515.     Illegal Equation
  4516.     This error  message means that QubeCalc could not evaluate
  4517.     the equation you supplied for the /Block DataFill command.
  4518.     Try carefully re-entering the equation.  Remember that the
  4519.     equation must start with an equal sign, that function names
  4520.     have to be CAPITALIZED.
  4521.  
  4522.     Illegal File Name
  4523.     This error  message means  that you  used a filename which
  4524.     DOS did not like.    QubeCalc  automatically  appends .QUB
  4525.     onto the  file names which you provide, so if you tried to
  4526.     provide a filename extension  yourself, you  will get this
  4527.     message.
  4528.  
  4529.     No More Memory Available
  4530.     This error  message means  that QubeCalc ran out of memory
  4531.     to place your data in.   If this  message occurs  during a
  4532.     command such  as /Block DataFill then you may still have a
  4533.     few bytes (1000 or so) left after you get the message (the
  4534.     bottom left hand corner will tell you).
  4535.  
  4536.  
  4537.  
  4538.  
  4539.  
  4540.  
  4541.  
  4542.  
  4543.  
  4544.  
  4545.  
  4546.  
  4547.  
  4548.  
  4549.  
  4550.  
  4551.  
  4552.                                                            97
  4553.  
  4554.  
  4555.  
  4556.  
  4557.     Unknown Key [..] In Macro
  4558.     This error  message means  that QubeCalc has encountered a
  4559.     special key in a macro which it does not recognize.  Check
  4560.     your macro to make sure that all special keys (those which
  4561.     are spelled out between square brackets) are spelled right
  4562.     and are CAPITALIZED.
  4563.  
  4564.  
  4565.  
  4566.  
  4567.  
  4568.  
  4569.  
  4570.  
  4571.  
  4572.  
  4573.  
  4574.  
  4575.  
  4576.  
  4577.  
  4578.  
  4579.  
  4580.  
  4581.  
  4582.  
  4583.  
  4584.  
  4585.  
  4586.  
  4587.  
  4588.  
  4589.  
  4590.  
  4591.  
  4592.  
  4593.  
  4594.  
  4595.  
  4596.  
  4597.  
  4598.  
  4599.      98
  4600.  
  4601.  
  4602.  
  4603.     Lotus and 1-2-3 are trademarks of Lotus Development Corp
  4604.  
  4605.     IBM  and  PC-DOS  are trademarks of International Business
  4606.     Machines Corp.
  4607.  
  4608.  
  4609.  
  4610.  
  4611.  
  4612.  
  4613.  
  4614.  
  4615.  
  4616.  
  4617.  
  4618.  
  4619.  
  4620.  
  4621.  
  4622.  
  4623.  
  4624.  
  4625.  
  4626.  
  4627.  
  4628.  
  4629.  
  4630.  
  4631.  
  4632.  
  4633.  
  4634.  
  4635.  
  4636.  
  4637.  
  4638.  
  4639.  
  4640.  
  4641.  
  4642.  
  4643.  
  4644.  
  4645.  
  4646.                                                            99
  4647.  
  4648.  
  4649.  
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.  
  4659.  
  4660.  
  4661.  
  4662.  
  4663.  
  4664.  
  4665.